Java

접근 제어자

BottleCoffin 2022. 5. 17. 09:44

자바에는 접근제한자(또는 접근제어자)라는 개념이 있다.

 

말 그대로 접근을 제한하기 위해 사용되며 여기서 접근이란 클래스 및 인터페이스, 그리고 이들이 가지고 있는 멤버의 접근을 말한다.

 

필요에 따라 클래스와 인터페이스를 다른 패키지에서 사용하지 못하도록 막거나 객체 생성을 막기 위해 생성자를 호출하지 못하게 하고 필드나 메소드를 사용하지 못하도록 막아야 되는 경우가 있기 때문에 이 때 사용하는 것이 접근제한자이다.

 

접근 제한자는 public, protected, private 세 가지 종류가 있으며, 접근 제어자가 지정되지 않으면 자동적으로 default 접근 제어를 가지게 된다.

 

pblic

단어 뜻 그대로 외부 클래스가 자유롭게 사용가능

protected

같은 패키지 또는 자식 클래스에서 사용가능

private

외부에서 사용될 수 없으며, 자기 자신의 클래스 내에서만 접근이 가능

default

위 세 가지 접근 제한자가 적용되지 않으면 default 접근 제한을 가지며, 같은 패키지에 소속된 클래스에서만 사용가능

 

여러 글들을 봤지만 아직까지는 개략적인 이해밖에 못한 것 같다.


글을 볼수록 모르는 것들이 늘어나기만 하는 것 같아 일단은 간단하게 정리하고 나중에 이해가 갈 때 추가로 작성해야겠다