public class Father {
public static void main(String[] args){
Fu f=new Zi();
f.text();
}
}
class Fu{
public void text(){
this.t();
this.g();
}
private void t(){
System.out.println("Fu t");
}
public void g(){
System.out.println("Fu g");
}
}
class Zi extends Fu{
public void t(){
System.out.println("Zi t");
}
public void g(){
System.out.println("Zi g");
}
}
这段代码,最后输出结果是Fu t和Zi g,g是子类重写了父类方法,输出了g,t是父类的t方法私有化了,就输出父类的t了,不过我不太明白,子类不是不能重写父类的私有化方法吗,为什么运行完不报错?求大神
public static void main(String[] args){
Fu f=new Zi();
f.text();
}
}
class Fu{
public void text(){
this.t();
this.g();
}
private void t(){
System.out.println("Fu t");
}
public void g(){
System.out.println("Fu g");
}
}
class Zi extends Fu{
public void t(){
System.out.println("Zi t");
}
public void g(){
System.out.println("Zi g");
}
}
这段代码,最后输出结果是Fu t和Zi g,g是子类重写了父类方法,输出了g,t是父类的t方法私有化了,就输出父类的t了,不过我不太明白,子类不是不能重写父类的私有化方法吗,为什么运行完不报错?求大神