반응형
자바에서는 접근제어자 라는 개념이 있다.
간단하게 설명하면 외부에서 해당 클래스, 해당 변수 등을 접근할수 있는지를 제어하는 것이다.
예를 들어 변수를 선언할때
String name = "name";
이런식으로도 사용하지만 앞에 접근제어자를 추가하여
private String name = "name";
이렇게 사용이 가능하다.
앞에 붙일수 있는 접근제어자는 총 3개이고 안붙이는 경우까지 포함하면 총 4가지의 경우가 생긴다.
각 경우에 따라 접근이 가능한 범위는 아래와 같다.
- public는 '공개'를 나타내며, 모든 클래스에서 접근이 가능 (패키지와 상관없음)
- private는 '비공개'를 나타내며, 같은 클래스안에 있는 멤버들만 접근이 가능
- protected는 같은 패키지안의 모든 클래스와, 다른 패키지의 자식 클래스에서 접근이 가능
- default(생략) 할 경우 접근지정자가 없으면 default 멤버로, 같은 패키지안의 클래스에서만 접근이 가능
결국 Public > Protected > default > Private 순서로 접근 제어가 제한이 된다.
그림으로 보면 아래와 같다.
반응형
'IT > Java' 카테고리의 다른 글
Openfeign 에서 fallback 동작 안할때 (56) | 2023.11.06 |
---|---|
@Transactional 사용시 주의 사항3 (Proxy 관련 // private 금지, 트랜잭션 분리) (38) | 2023.11.04 |
[eclipse] 디버깅 중 (Watch) 기능 (36) | 2023.10.27 |
Java EE / Java SE 에 대해서( feat. Java ME) (38) | 2023.10.26 |
[JPA] 쿼리메서드 existsById 관련 ( Required identifier property not found for class com.com.jpa.TestTable ) (60) | 2023.10.24 |
댓글