Коротко про Java
February 22nd, 2009
| Microsoft викинула Java з Windows XP »
Будь-який клас може звернутися до даним і методам іншого класу з будь-якого комп’ютера мережі, якщо він має модифікатор доступу. Постарайтеся описувати методи як public лише в крайньому випадку, коли це дійсно необхідно. А оголошувати змінні усередині класу як public не стоїть - для цього треба б передбачити окремі методи, які і повинні робити це за вас.
Protected
Модифікатор доступу protected дозволяє звертатися до даним і методам класу лише самому класу, класам, що зберігаються в цій же упаковці, і успадкованим класам, але лише в тому випадку, якщо вони знаходяться в одній упаковці з класом-предком.
Зазвичай такий модифікатор застосовують для того, щоб закрити доступ даним і методам для тих класів, які не полягають в “споріднених відносинах” з класом, що захищається. Звернете увагу на те, що в Java класи вважаються спорідненими, не тільки якщо вони успадковані один від одного, але і просто зберігаються в одній і тій же упаковці.
Припустимо, що в упаковці Nums є якийсь клас First і що він містить змінну і метод, оголошені protected:
package Nums; class First { protected int protVar; protected void protMethod() { System.out.println(”protMeth called!”); } }
Якщо тепер в тій же упаковці описати інший клас з ім’ям Second, то він зможе вільно звертатися до методів і даних класу First, не звертаючи уваги на те, що Second не був успадкований від First:
package Nums; class Second { void protAccessMethod() { First ар = new First(); ар.protVar = 345; ар.protMethod(); } }
Нагадаю, що успадковані класи можуть безперешкодно звертатися до даним і методам, відміченим модифікатором protected, тільки в тому випадку, якщо клас-предок розташовується в тій же упаковці, що і самі класи-спадкоємці.
Private
Tags: дані, доступ, клас, метод, мова, модифікатор, упаковка
Загальна інформація
Схожі записи
Категория: Загальна інформація |









