-
package 연습코딩/java 2019. 3. 3. 13:40반응형
package out;
import planet.*;
public class T {
public static void main (String[] args) {
B bobj = new B();
bobj.accessTest();
E eobj = new E();
//eobj.accessTest();//default는 같은 클래스에서만 사용 가능하다
//F fobj = new F();//클래스 앞에 public이 붙지 않았으므로 사용 불가능하다
}
}
---------------------------------------------------------------------------------------------------------------------------------------------------
package planet;
public class A {
public int pub = 1;
protected int pro = 2;
int def = 3; //default
private int prv = 4;
}
package planet;
public class B extends A{
public void accessTest() {
System.out.println(pub);
System.out.println(pro);
System.out.println(def);
//System.out.println(prv); // prv는 private이기 때문에 A에서만 사용 가능하다
F fobj = new F();
fobj.accessTest();
}
}
package planet;
public class C {
void accessTest() {
A aobj = new A();
System.out.println(aobj.pub);
System.out.println(aobj.pro);
System.out.println(aobj.def);
//System.out.println(aobj.prv);//prv는 private이기 때문에 A클래스 안에서만 사용 가능하다
F fobj = new F();
fobj.accessTest();
}
}
package planet;
class F {
void accessTest() {
A aobj = new A();
System.out.println(aobj.pub);
System.out.println(aobj.pro);
System.out.println(aobj.def);
//System.out.println(aobj.prv); prv는 private이기 때문에 A클래스에서만 사용 가능하다
}
}
--------------------------------------------------------------------------------------------------------------------------------------------------
package universe;
import planet.A;
public class D extends A{
void accessTest() {
System.out.println(pub);
System.out.println(pro);
//System.out.println(def);//def는 default이기 때문에 동일한 패키지에서만 사용 가능하다
//System.out.println(prv);//prv는 private이기 때문에 A 클래스에서만 사용 가능하다
//F fobj = new F(); //planet.F fobj = new planet.F();가 맞는 표현 혹은 import planet.F
//fobj.accessTest(); //accessTest()가 default이기 때문에 동일한 패키지에서만 접근가능하다
}
}
package universe;
import planet.A;
public class E {
void accessTest() {
A aobj = new A();
System.out.println(aobj.pub);
//System.out.pirntln(aobj.pro);//protect는 A와 같은 package 또는 자식만 사용 가능하다
//System.out.println(aobj.def);//protect는 A와 같은 package 또는 자식만 사용 가능하다
//System.out.println(prv);//prv는 private이기 때문에 A 클래스에서만 사용 가능하다
//F fobj = new F(); //planet.F fobj = new planet.F();가 맞는 표현 혹은 import planet.F
//fobj.accessTest(); //accessTest()가 default이기 때문에 같은 패키지에서만 사용가능하다
}
}
반응형'코딩 > java' 카테고리의 다른 글
주사위 던지기2 (0) 2019.03.03 랜덤 주사위 (같은 수가 나올 때까지) (0) 2019.03.03 상자 정보 (상속2) (0) 2019.03.03 상자 정보 (상속) (0) 2019.02.10 학생 정보(상속) (0) 2019.02.10