Java/Java Concept
[Java] 접근제어 지시자
군우
2018. 1. 16. 13:50
private
인스턴스의 변수가 private로 선언이되면, 해당변수가 선언된 클래스 외부에서는 접근이 불가 능하다.
public
어디서든 접근 가능한 인스턴스 변수 및 메소드가 된다.
하지만,
1. 하나의 소스 파일에는 하나의 클래스만 public으로 할 수 있다
2. public클래스의 이름과 소스파일의 이름은 와전히 일치 해야한다.
default
인스턴스 변수와 인스턴스 메소드에는 아무런 접근제어 지시자를 선언하지 않을 수도 있는데 디폴트 선언 이라고한다, default로 선언된 인스턴스 변수 및 인스턴스 메소드는 동일 패키지 내에서의 접근을 허용한다.
protected
default + 상속 받은 클래스에서 접근 가능하다.ㅁ
private : 클래스 내부에서 접근가능.
default: 클래스 내부, 동일 패키지에서 접근 가능.
protected: 클래스내부, 동일 패키지, 상속받은 클래스 접근 가능.
public: 클래스 내부, 동일 패키지, 상속받은 클래스, 이외의 영역에서 접근 가능.
동일 패키지에서 접근 가능하다는 말은
상속 관계가 아닌 클래스 끼리도 접근이 가능하다는 것이다.