728x90
반응형
접근제어자는 4가지가 있다.
- default
- public
- protected
- private
1. default
필드나 메서드에 접근제어자를 지정해주지 않는 경우 내부적으로 default 접근제어자를 지정해준다.
default 접근제어자로 지정된 필드, 메서드는 해당 패키지 내에서 자유롭게 접근이 가능하다.
2. public
어감 그대로 어디서든 자유롭게 접근할 수 있다.
3. protected
해당 패키지와 해당 클래스를 상속받은 다른 패키지 내 클래스에서도 접근할 수 있다.
4. private
해당 클래스를 제외하고는 어디서도 접근할 수 없다.
아래 그림과 함께 보면 이해가 조금 더 쉬울 수 있다.
이제 의문이 들기 시작한다. 왜 코드를 다른 곳에서 못쓰게 막아야 할까?
이 의문에 대한 내 생각을 간단하게 정리하면 다음과 같다.
"서로 협업하다가 다른 사람이 변수 설정을 이상하게 하면? 외부에서는 필요 없는 함수인데 이걸 굳이 다른 사람이 알아야 할까?"
"필요한 부분에 대해서만 공개를 하고 나머지는 숨기자."
피드백, 문의는 댓글이나 gudwls1530@gmail.com으로 부탁드립니다.
Refer
[1] : 생활코딩:opentutorials.org/course/2517/14138
728x90
반응형
'JAVA' 카테고리의 다른 글
JAVA - Garbage Collection (0) | 2021.06.17 |
---|---|
[JAVA] new와 ""의 차이 / string constant pool (0) | 2021.06.06 |
저는 Eclipse로 개발합니다(1) - debugging (0) | 2021.03.25 |
JVM -XX Options (0) | 2021.03.01 |
JVM 구조 (2) | 2021.03.01 |