면접 스터디
객체의 가시성 수정자는 어떻게 작동하는가?
DRAGON.Q
2016. 3. 2. 19:05
- 가시성 수정자(visibility modifier) 는 클래스의 캡슐화된 상태와 인스턴스 행동을 조정하는 메서드의 접근을 제어하는 역할.
-
가시성 |
수정자 |
범위 |
Least |
private |
같은 클래스의 모든 인스턴스 접근가능 하위 클래스 접근 불가능 |
<none> |
같은 패키지의 모든 클래스에서 접근 가능 | |
protected |
모든 하위 클래스에서 접근 가능 | |
Most | public | 어디서든 접근가능 |
- pirvate의 일반적이 ㄴ오해는 private으로 선언한 변수는 해당 인스턴스에만 접근할 수 있다고 생각하는 것.
- 실제로 같은 타입의 다른 모든 인스턴스가 private 멤버 변수에 접근할 수 있다.
- 책 8-7 코드는 같은 타입이지만 다른 인스턴스에서 private 멤버 변수에 접근하는 두 가지 경우를 보여주는 예다.