Валерий Станиславович Яценков

Java за неделю. Вводный курс


Скачать книгу

предотвратить ошибочную модификацию значения статического поля, его объявляют закрытым при помощи ключевого слова private. Закрытые члены класса доступны только в теле класса, и к ним нет прямого доступа извне.

      Как обратиться к закрытому полю? Для этого необходимо описать в классе открытый статический метод и вызвать его как обычно, через точку после имени класса. Пример класса с закрытым статическим полем и открытым статическим методом приведен в листинге 6.7.

      Листинг 6.7 Пример класса с закрытым статическим полем

      class MyClass {

      // закрытое статическое текстовое поле

      private static String text=«Hello»;

      // открытый статический метод

      // для изменения закрытого поля

      static void setText (String txt) {

      text=txt;

      }

      static void showText () {

      System.out.println (text);

      }

      }

      public class Listing6_7 {

      public static void main (String [] args) {

      // Выводим значение поля на печать

      MyClass.showText ();

      // Модифицируем значение поля

      MyClass.setText («New text»);

      // Выводим новое значение на печать

      MyClass.showText ();

      }

      }

      В данном примере мы описали класс с закрытым статическим полем text. Поскольку поле закрытое, мы не можем обратиться к нему извне через имя класса с точкой, как это было в листинге 6.6. Для работы с полем мы описали два открытых статических метода, showText () и setText ().

      В главном классе программы сначала мы выводим содержимое поля на печать при помощи метода showText (). Затем модифицируем значение поля при помощи метода setText () и вновь выводим содержимое поля на печать, чтобы убедиться, что оно изменилось.

      Ключевое слово public

      При описании открытых членов класса можно использовать ключевое слово public, которое определяет уровень доступа. Во всех предыдущих примерах открытые члены класса были описаны без ключевого слова public (конструкция по умолчанию). В таком случае их доступность ограничивается текущим пакетом, и этого достаточно для простых программ. Если открытый член класса описан с идентификатором доступа public, то он доступен также и в других пакетах.

      Глава 7. Наследование

      Наследование – это один из ключевых принципов объектно-ориентированного программирования. Идея наследования проста: при описании нового класса мы берем за основу существующий класс, его поля и методы.

      Исходный класс называется суперклассом или родительским классом (parent class). Класс, созданный на основе суперкласса, называется подклассом или дочерним классом (child class).

      Подкласс наследует у суперкласса все его открытые поля и методы. Допускается каскадное или многократное наследование, то есть подкласс сам может быть суперклассом по отношению к созданным на его основе подклассам.

      Суперкласс может быть пользовательским или библиотечным. Пользовательский суперкласс описан непосредственно в программе пользователя. Библиотечный суперкласс описан в одной из библиотек. Это могут быть как стандартные