생활코딩 - 자바 공부 후 정리한 내용입니다.


접근 제어자


  • 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(); // #1
a.public_method2(); // #2
}
}

  • #1 : public 메서드 호출 가능
  • #2 : private 메서드 호출 불가능, public 메서드를 통해서는 호출 가능하다.




public 클래스와 클래스


  • class : 같은 패키지 내에서만 사용
  • public class : 퍼블릭 클래스의 소스코드 파일 이름은 같아야 한다.
  • 즉, 하나의 소스코드에는 하나의 퍼블릭 클래스만 존재한다.