Видимо для пакета. По умолчанию. Модификаторы не нужны.
Доступно только для класса ( личное ).
Видимый миру ( публичный ).
Доступно для пакета и всех подклассов ( protected ).
Переменные и методы могут быть объявлены без каких-либо вызываемых модификаторов. Примеры по умолчанию:
String name = "john";
public int age(){
return age;
}
Модификатор личного доступа - частный:
Методы, переменные и конструкторы, которые объявлены закрытыми, доступны только внутри самого объявленного класса. Модификатор частного доступа является наиболее ограниченным уровнем доступа. Класс и интерфейсы не могут быть приватными.
Переменные, которые объявлены закрытыми, могут быть доступны вне класса, если в классе присутствуют общедоступные методы получения.
Использование модификатора private - это основной способ, которым объект инкапсулирует себя и скрывает данные от внешнего мира.
Примеры:
Public class Details{
private String name;
public void setName(String n){
this.name = n;
}
public String getName(){
return this.name;
}
}
Модификатор публичного доступа - общедоступный:
Класс, метод, конструктор, интерфейс и т. Д., Объявленные как public, могут быть доступны из любого другого класса. Поэтому к полям, методам, блокам, объявленным внутри открытого класса, можно получить доступ из любого класса, принадлежащего юниверсу Java.
Однако, если публичный класс, к которому мы пытаемся получить доступ, находится в другом пакете, тогда публичный класс все равно необходимо импортировать.
Из-за наследования классов все открытые методы и переменные класса наследуются его подклассами.
Пример:
public void cal(){
}
Модификатор защищенного доступа - защищено:
Переменные, методы и конструкторы, которые объявлены защищенными в суперклассе, могут быть доступны только подклассам в другом пакете или любом классе в пакете класса защищенных членов.
Модификатор защищенного доступа не может применяться к классу и интерфейсам. Методы, поля можно объявить защищенными, однако методы и поля в интерфейсе нельзя объявить защищенными.
Защищенный доступ дает подклассу возможность использовать вспомогательный метод или переменную, в то же время предотвращая попытки его использования несвязанным классом.
class Van{
protected boolean speed(){
}
}
class Car{
boolean speed(){
}
}