Park_BoYoung
Park_BoYoung
采纳率100%
2016-07-15 07:27 阅读 1.1k
已采纳

JAVA父类引用指向子类问题

如题,不明白父类引用指向子类指向子类什么意思。
还有 为什么 NewClass9 nc9 = new NewClass9();可以引用父类的变量,而 NewClass10 nc9 = new NewClass9();就无法引用父类的变量。
希望大神能给一个比较易懂的回答,或者举个例子说明一下,不胜感激!!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • 已采纳
    cao986308653 中二大叔撸代码 2016-07-15 09:08

    算了 大概给你说一点,多态发生有3个条件
    1.继承 2.重写 3.父类的引用指向子类的对象;
    应为重写了方法,所以会有同名同参的方法,java虚拟机在编译时不知道加载同名方法中的哪个方法,所以加载哪个方法是在运行时看具体的实际对象而定;
    例如:
    Student s = new Person();s.eat();此处运行时s对象实际的引用是Person对象,所以会调用Person的eat()方法;

    点赞 评论 复制链接分享
  • cao986308653 中二大叔撸代码 2016-07-15 08:55

    这是Java中的多态。。。。
    写太多文字你也不容易懂,要想真正理解,就要画内存图,推荐你去看尚学堂马士兵的课,多看几次就理解了。

    点赞 评论 复制链接分享

相关推荐