[Java] 접근 지정자

자바에서는 객체를 캡슐화하기 때문에, 객체에 다른 객체를 접근하는 것을 허용할지 여부를 지정할 필요가 있어 접근 지정자가 필요.

 

패키지

서로 관련있는 클래스 파일들을 저장하여 관리하기 위해 필요.

 

클래스 접근 지정

다른 클래스에서 이 클래스를 활용할 수 있는지 허용 여부 결정

public 클래스

public class Ex { ... }

패키지에 상관없이 다른 어떤 클래스에게도 사용이 허용.

 

디폴트 클래스(접근 지정자 생략)

class Ex { ... }

같은 패키지 내의 클래스들에게만 사용이 허용.

 

멤버 접근 지정

멤버에 접근하는 클래스 멤버의 접근 지정자
private 디폴트 접근 지정 protected public
같은 패키지의 클래스 X O O O
다른 패키지의 클래스 X X X O
접근 가능 영역 클래스 내 동일 패키지 내 동일 패키지와 (다른 패키지의)자식 클래스 모든 클래스

private < 디폴트 < protected < public 순으로 공개 범위 넓어진다.

 

반응형

'Back-End > Java' 카테고리의 다른 글

[Java] 상속(1)  (1) 2022.02.21
[Java] static 멤버와 final  (1) 2022.02.18
[Java] 객체  (1) 2022.02.18
[Java] 클래스와 생성자  (0) 2022.02.15
[Java] 예외 처리  (0) 2022.02.14