artace.ru - творческий сектор

Название: Что значит protected? [Версия для печати]

Автор: admin    Время: 2024-10-12 11:30
Название: Что значит protected?
Что значит protected?" \! A8 p) P# C3 w6 @  F
Когда переменная или метод класса объявлены с модификатором protected, это означает следующее:) _8 q: \. M* E6 }. z- h4 M
, k% |+ q) v8 M7 h7 Y7 @7 s% ~

% l$ Z" }9 Q' ^Различие между public, protected, private, и default (package-private):
Пример:
* ]. t& g6 D  r9 M; Z7 x
  1. public class Animal {. r" Y, @4 k, {' k  T% t7 @
  2.     protected String name;9 b- F1 U  l( n& P( K* I4 f+ \

  3. ' x$ m3 J1 P/ u- z. K, a: n
  4.     protected void eat() {* |* p) l6 i; ~) i
  5.         System.out.println("Animal is eating");
    " j4 k( x8 h4 }" @( v
  6.     }. N$ ]2 r* a' Q0 b
  7. }  [6 A$ Q  M7 s% Z, r9 i: A2 r

  8. ( F' N/ m: p# H& S* `9 i3 n
  9. public class Dog extends Animal {6 j+ G8 A6 `; h/ j
  10.     public void bark() {
    : F$ Y$ l0 k" {% w/ S8 h
  11.         System.out.println("Dog is barking");% {6 N- K) V1 k0 T* ]( R9 T7 |% C
  12.     }/ @4 J) v3 `. w# c: |

  13. : `1 K% U- ~  h. z) K2 D" g
  14.     public void dogBehavior() {% ^, [* s9 n$ L  |' U6 V6 _
  15.         // Доступ к protected полям и методам родительского класса
    6 h' A8 m+ {4 h
  16.         name = "Buddy";      // доступ к полю name
    3 \  T1 \4 m; [# K; \# p5 F: Q, `
  17.         eat();               // вызов метода eat- Q4 R- i( `% O) e* u3 o
  18.         bark();              // вызов метода bark9 I/ K" B. f* @
  19.     }1 F, }4 q+ X; @5 V* h" B) ]2 |$ G3 z1 Z
  20. }
    ( |. D  g$ z1 h2 ~/ h5 x
Скопировать код
В этом примере:" i: p  ?5 M& G# i! T$ N. U
Основное преимущество protected:Модификатор protected предоставляет возможность наследникам работать с полями и методами родительского класса, сохраняя при этом некоторую степень инкапсуляции. То есть, другие классы не могут получить доступ к этим полям и методам, если они не находятся в том же пакете или не являются наследниками.
% o7 [. t" Q5 D& r1 f, c# o7 H* tНадеюсь, это объяснение помогло!. p! x8 A; d) j! u+ P0 P/ t0 ^
  C% |5 ?7 Z. N# x0 h

5 V  }3 ?' Q/ I8 @7 z9 t/ v8 E# F9 E- x, P% V; J

# h+ s! j* w7 J2 X$ ~% h4 ~; o. G




Добро пожаловать artace.ru - творческий сектор (https://artace.ru/) Powered by Discuz! X3.5