下面的Test.java程序,输出结果是derive吗?
class base { private void print() { // 注意:private修饰 System.out.println("base"); } public void doprint() { print(); }}class derive extends base { private void print() { // 注意:private修饰 System.out.println("derive"); }}class Test { public static void main(String[] args) { base b = new derive(); b.doprint(); }}
最佳答案
不是,输出结果是base
因为你的b是base类型的,它调用的doprint()为class base的
其他回答
其它网友回答:
base doprint() 私有 未被重写
其它网友回答:
私有的方法是不被继承的,但是你又复写了,调用哪个类就使用哪个类的方法。