Якщо я набираю:
void doThis(){
System.out.println("Hello Stackoverflow.");
}
що таке область за замовчуванням doThis()
?
Публічний? Захищений? Приватний?
Якщо я набираю:
void doThis(){
System.out.println("Hello Stackoverflow.");
}
що таке область за замовчуванням doThis()
?
Публічний? Захищений? Приватний?
Відповіді:
Область за замовчуванням - пакетна приватна. Усі класи в одному пакеті можуть отримати доступ до методу / поля / класу. Пакет-приватний суворіший, ніж захищений та загальнодоступний, але дозволений, ніж приватний.
Більше інформації:
http://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
http://mindprod.com/jgloss/scope.html
До всього, що визначено як приватний пакет, можна отримати доступ до самого класу, інших класів у тому ж пакеті, але не за межами пакета та не підкласів.
Дивіться цю сторінку для зручної таблиці модифікаторів рівня доступу ...
Без модифікатора доступу член класу доступний у всьому пакеті, в якому він оголошений. Ви можете дізнатися більше з Специфікації мови Java, §6.6.
Учасники інтерфейсу завжди є загальнодоступними, незалежно від того, явно заявлені чи ні.
Область за замовчуванням - "за замовчуванням". Це дивно - див. Ці посилання для отримання додаткової інформації.
Якщо ви не даєте жодних модифікаторів для свого методу, то за замовчуванням це буде модифікатор за замовчуванням, який має рамки в пакеті.
Для отримання додаткової інформації ви можете звернутися до http://wiki.answers.com/Q/What_is_default_access_specifier_in_Java