package com.java1.day14;
public class Test extends LimitEx1 {
public static void main(String[] args) {
LimitEx1 li = new LimitEx1();
li.print(); //LimitEx1 클래스의 print 메서드의 접근 제한자가 default일 경우 접근 할수 없다는 에러가 발생한다.
System.out.println(li.x); // 변수 x는 public 이라서 접근 가능..
System.out.println(li.y); // 변수 y는 default 이므로 다른패키지 에서 접근 불가..
// System.out.println(li.z); //z는 당연히 접근불가..
//li 인스턴스 내에 protected로 선언된 p가 있는데 에러가 발생한다.
System.out.println(li.p); // 부모 클래스에서 접근하면 안되고..자식클래스를 통해서 접근 해야 한다.
Test t = new Test(); //자식 클래스 생성..
System.out.println(t.p); //상속관계에 있다면 protected 로 선언되었기 때문에 접근가능하다.
System.out.println(t.x); //public 이므로 접근가능..
System.out.println(t.y); //defaut 접근 제한자 y 이므로 접근 불가..
// System.out.println(t.z); //private 접근 제한자 z 이므로 접근 불가..
LimitEx2 li2 = new LimitEx2(); //LimitEx2는 접근 제한자가 default 라서 접근자체가 안된다.
}
}
출력!
0
0
0
0
0
0