반응형
자바에는 클래스 내에서 멤버의 접근을 제한하는 역할을 하는 접근 제어자가 있다.
Access Modifier(접근 지정자, 접근 제어자)는 알다시피 4가지가 있다.
- public: 모든 접근 허용
- protected: 클래스 내부, 동일 패키지, 상속받은 하위 클래스에서만 접근 가능
- default: 클래스 내부와 같은 패키지에서만 접근 가능
- private: 클래스 내부에서만 접근 가능
접근 허용은 public > protected > default > private 순서대로 허용폭이 넓다.
클래스 | 동일 패키지 | 하위 클래스 | 모든 클래스 | |
public | ○ | ○ | ○ | ○ |
protected | ○ | ○ | ○ | X |
default | ○ | ○ | X | X |
private | ○ | X | X | X |
접근제어자를 모두 public으로만 해도 코드는 문제없이 동작한다. 하지만 목적에 맞게 이를 잘 이용하면 객체를 사용할때 내부적으로 사용하는 변수나 메서드에 접근을 막아 오류를 막을 수 있다.
반응형
'IT 이야기 > Java' 카테고리의 다른 글
[Java] 추상 클래스 (0) | 2020.05.18 |
---|