생활코딩 - 자바 공부 후 정리한 내용입니다.
접근 제어자
- public
- protected
- default
- private
제어자 |
같은 패키지 |
다른 패키지 |
다른 패키지 & 상속 |
관계 없음 |
public |
O |
O |
O |
O |
protected |
O |
O |
O |
X |
default |
O |
O |
X |
X |
private |
O |
X |
X |
X |
같은 클래스 내 호출 가능한 범위
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| class A { public void pulic_method() { System.out.println("public method"); } private void private_method() { System.out.println("private method"); } public void public_method2() { private_method(); System.out.println("It calls private_method()"); } }
|
1 2 3 4 5 6 7 8
| public class Main { public static void main(String[] args) {
A a = new A(); a.pulic_method(); a.public_method2(); } }
|
- #1 : public 메서드 호출 가능
- #2 : private 메서드 호출 불가능, public 메서드를 통해서는 호출 가능하다.
public 클래스와 클래스
- class : 같은 패키지 내에서만 사용
- public class : 퍼블릭 클래스의 소스코드 파일 이름은 같아야 한다.
- 즉, 하나의 소스코드에는 하나의 퍼블릭 클래스만 존재한다.