카테고리 없음
객체지향 접근 제어자(access modifier)
연93
2022. 9. 26. 12:00
더보기
Prvate : 같은 클래스 내에서만 접근이 가능하다.
(default) : 같은 패키지 내에서만 접근이 가능하다.
protected : 같은 패키지 내에서, 그리고 다른 패키지의 자손클래스에서 접근이 가능하다.
public : 접근 제한이 전혀 없다.
package pkg1;
class Myparent {
private int prv; // 같은 클래스
int dft; // 같은 패키지
protected int prt; // 같은 패키지 + 자손(다른 패키지)
public int pub; // 접근제한 없음.
public void printMembers() { // 같은 클래스 내부에선 모두 출력가능
System.out.println(prv);
System.out.println(dft);
System.out.println(prt);
System.out.println(pub);
}
}
//다른 클래스 호출
public class MyParentTest {
public static void main(String[] args) {
Myparent p = Myparent();
System.out.println(p.prv); // 에러
System.out.println(p.dft); // ok
System.out.println(p.prt); // ok
System.out.println(p.pub); // ok
}
}