캡슐레이션

-> 내부의 구조를 감쳐서, 외부에서  불필요한 접근을 막게 하는 것 (=캡슐화)

 

 

 

 

캡슐화에서 핵심적인 것이 "접근제어자"

- default(아무것도 안적은거)

- private

- public 

- protected

 

 

 

 

 

자식클래스가 부모클래스를 상속한 상태에서의 자식클래스에서 부모클래스의 변수를 사용하면

 

"변수public"은 부모클래스, 자식클래스 모두 접근 가능함.

 

"변수private"은 부모만 접근 가능하고, 자식클래스에서는 사용 못합니다.

 

"변수protected"는 부모클래스, 자식클래스 간의 접근은 가능하다(상속관계에서는 가능함), 근데,  인스턴스화(new 해서 만든거)된 것에서는 사용 못하네, 

 

"변수protected"는 부모클래스를 상속받는 자식클래스에서는 내부적으로 매소드를 이용해서 접근이 가능하지만, 외부에서는   접근을 하지 못함.