Page 30 - 4657
P. 30

System.out.println("derived constructor");
       System.out.println("n = " + n);
       // тільки в класі
       // System.out.println("n_pri = " + n_pri);
       System.out.println("n_pro = " + n_pro);
       System.out.println("n_pripro = " + n_pripro);
       System.out.println("n_pub = " + n_pub);
       } }
       class SamePackage {
       SamePackage() {
       Protection p = new Protection();
       System.out.println("same package constructor");
       System.out.println("n = " + p.n);
       // тільки в класі
       // System.out.println("n_pri = " + p.n_pri);
       System.out.println("n_pro = " + p.n_pro);
       // тільки в класі і підкласі
       // System.out.println("n_pripro = " + p.n_pripro):
       System.out.println("n_pub = " + p.n_pub):
       } }

            Інтерфейси

           Інтерфейси  Java  створені  для  підтримки  динамічного
       вибору  (resolution)  методів  під  час  виконання  програми.
       Інтерфейси схожі на класи, але на відміну від останніх у інтер-
       фейсів  немає  змінних  екземплярів,  а  в  оголошеннях  методів
       відсутня  реалізація.  Клас  може  мати  будь-яку  кількість
       інтерфейсів. Усе, що потрібно зробити - це реалізувати в класі
       повний набір методів всіх інтерфейсів. Сигнатури таких методів
       класу  повинні  точно  збігатися  із  сигнатурами  методів
       реалізованого  в  цьому  класі  інтерфейсу.  Інтерфейси  володіють
       своєю  власною  ієрархією,  що  не  перетинається  з  класовою
       ієрархією  спадкування.  Це  дає  можливість  реалізувати  той
       самий  інтерфейс  у  різних  класах,  ніяк  не  зв'язаних  по  лінії
       ієрархії  класового  спадкування.  Саме  в  цьому  і  виявляється
       головна  сила  інтерфейсів.  Інтерфейси  є  аналогом  механізму
       множинного  спадкування  в  C++,  але  використовувати  їх
       набагато легше.
       28
   25   26   27   28   29   30   31   32   33   34   35