package zpc.databaseTest; public class Father { private String name=""; private int a=12;; protected void test1(){ System.out.println("name="+name); }
public void test2(){ System.out.println("2="+test3()); } private int test3(){ return 2; } }
package TinkingJava; import zpc.databaseTest.Father; public class Son extends Father{ public static void main(String[] args){ Father f=new Father(); f.test1();//test1()是protected的啊
Son s=new Son(); s.test1();//这里不报错 s.test2(); //s.test3();//private的当然不能访问 }
} 跟这样可以访问,就是调用父类的方法,把私有属性在方法中进行处理
protected子类不是可以直接访问么
public class Father { protected String value = "father value!"; }public class Son extends Father{ private String value = "Son value";
public static void main( String[] args ) { Son s = new Son(); s.print(); }
public void print(){ System.out.println( value ); System.out.println( super.value ); } } 运行结果 Son value father value!
public class Father {
private String name="";
private int a=12;;
protected void test1(){
System.out.println("name="+name);
}
public void test2(){
System.out.println("2="+test3());
}
private int test3(){
return 2;
}
}
package TinkingJava;
import zpc.databaseTest.Father;
public class Son extends Father{
public static void main(String[] args){
Father f=new Father();
f.test1();//test1()是protected的啊
Son s=new Son();
s.test1();//这里不报错
s.test2();
//s.test3();//private的当然不能访问
}
}
跟这样可以访问,就是调用父类的方法,把私有属性在方法中进行处理
public class Father {
protected String value = "father value!";
}public class Son extends Father{
private String value = "Son value";
public static void main( String[] args ) {
Son s = new Son();
s.print();
}
public void print(){
System.out.println( value );
System.out.println( super.value );
}
}
运行结果
Son value
father value!