본문 바로가기

자바

접근제어자(Access Modifier)정리

 

public : 외부 클래스가 자유롭게 사용할 수 있음

protected : 같은 패키지 또는 자식 클래스에서 사용할 수 있음

private : 외부에서 사용 불가능

default : 같은 패키지에 소속된 클래스에서만 사용 가능

 

protected가 기능상 public과 비슷함에도 굳이 사용되는 이유 : 

자식 클래스가 오버라이드해서 바꾸어야 할 경우를 고려한 접근 제어자이다. 완성되지 못한 클래스 맴버를 의미한다.

앞으로 더 구현할 것이 남아있거나, 일부로 완성시키지 않았을 경우를 의미한다. 

그럼 abstract와 다른게 무엇일까. abstract는 반드시 구현하고 protected는 일부로 완성시키지 않아도 

된다는게 큰 차이다.

 

 

반응형

'자바' 카테고리의 다른 글

제네릭(generic)  (0) 2022.08.26
스프링은 어떻게 property를 관리할까  (0) 2022.08.19
스프링 부트 프로파일(profile)설정  (0) 2022.08.19
다형성(polymorphism)  (0) 2022.06.24
싱글톤(Singleton)  (0) 2022.06.23