Какова область применения метода по умолчанию в Java?

Если я напечатаю:

 void doThis(){
     System.out.println("Hello Stackoverflow.");
 }

какова область по умолчанию doThis()?

Public? Защищенное? Частный?

Ответ 1

Область по умолчанию - конфиденциальная. Все классы в одном пакете могут получить доступ к методу/поле/классу. Пакет-частный более строгий, чем защищенный и общедоступный, но более разрешительный, чем частный.

Дополнительная информация:
http://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
http://mindprod.com/jgloss/scope.html

Ответ 2

Все, что определено как private для пакета, может быть доступно самим классом, другими классами в одном пакете, но не вне пакета, а не подклассами.

Смотрите эту страницу для удобной таблицы модификаторов уровня доступа...

Ответ 3

Без модификатора доступа член класса доступен во всем пакете, в котором он был объявлен. Вы можете узнать больше из Спецификация языка Java, §6.6.

Члены интерфейса всегда общедоступны, явно объявлены или нет.

Ответ 4

По умолчанию используется значение по умолчанию. Это странно - см. эти ссылки для получения дополнительной информации.

Ответ 5

Если вы не даете модификатор вашему методу, то по умолчанию он будет модификатором по умолчанию, который имеет область действия внутри пакета.
для получения дополнительной информации вы можете сослаться на http://wiki.answers.com/Q/What_is_default_access_specifier_in_Java

Ответ 6

Java 8 теперь позволяет реализовать методы внутри самого интерфейса с областью по умолчанию (и только статикой).