Open_Mind 2015-08-13 13:00 采纳率: 33.3%
浏览 1692
已结题

面向对象 为什么输出 I am Mike.wang-wang

public static void main(String[] args) {

    Animal b = new Bulldog();

    b.syaHi();

}

class Dog implements Animal
{

public String getName()

{

    return "Bob";

}

private String bark()

{

    return "wang-wang";

}

public void syaHi()

{

    System.out.println("I am " + getName() + "." + bark());

}

}

class Bulldog extends Dog
{

@Override
public String getName() {
    return "Mike";
}

private String bark() {
    return "WOO-WOO";
}

}

为什么输出
I am Mike.wang-wang
而不是
I am Mike.WOO-WOO
怎么可能访问到父类的私有函数呢???

  • 写回答

8条回答 默认 最新

  • Robot-C 2015-08-13 13:03
    关注

     这已经是IT历史上一个鲜为人知的传奇故事,儿时的梦想是做个科学家,曾经在一本科学家故事书中读到了Dr. An Wang和王安电脑公司的故事,一直到现在我的意识中依然有很深的印象。中午,我进入了英文维基百科,忽然又想起了Dr. An Wang和Wang Laboratories,搜索之后知道原来这段历史美国人依然没有忘记,毕竟IBM PC时代的到来之前,Dr. An Wang 和Wang ......
    答案就在这里:Dr. An Wang and Wang Laboratories (An legend in IT history)
    ----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。

    评论

报告相同问题?