游客您好
第三方账号登陆
  • 点击联系客服

    在线时间:8:00-16:00

    客服电话

    020-85534346

    电子邮件

    81058337@qq.com
  • 码云社APP

    随时掌握码云社动态

  • 扫描二维码

    关注砺锋微信公众号

推荐阅读
鸿buff 初显锋芒
未知星球 | 未知职业
  • 关注0
  • 粉丝0
  • 帖子23
热议话题
精选帖子

JAVASE 陈培鸿-Day13 学习心得

[复制链接]
鸿buff 发表于 2020-11-10 20:45:00 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
多态


关于多态情况下,使用的是子类方法的问题:
     很多人认为,是直接调用了子类的方法 其实不是,只是因为子类重写了父类的方法
     其实本质上找的还是的父类空间,只不过父类空间的方法已经被子类重写了,所以造成了一个访问到子类的假象。
     这也就是我们为什么说,多态如果不重写父类方法是没有意义的根本原因,因为你不重写子类写的所有方法是访问不到的。


class A{public void show(){show2(); }
public void show2(){
System.out.println("");
    }//
}
class B extends A{
@Override
//    public void show(){
//        show2();
//    }

    public void show2(){
System.out.println("");
    }//爱你

}
class C extends B{
@Override
    public void show(){
super.show();
    }
@Override
    public void show2(){
System.out.println("");
    }//
}
public class Demo06 {
public static void main(String[] args) {//爱你
        A a = new B();
        a.show();
        B b = new C();
        b.show();
    }
}



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
码云社-用代码改变世界!
回复 关闭延时

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

CODESEEDING(码云社)一家致力于程序员成长、以内容为核心、以提问为引导的多元化成长社区。我们在线上为技术爱好者提供了一个优质的交流氛围环境,在线下同样和众多高校联合开办了技术沙龙品牌。
020-85534346
关注我们
  • 访问移动H5版
  • 官方微信公众号

码云社 - CODESEEDING 2.0© 2018-2019 码云社. TOOBUG ( 粤ICP备16114193号-3 )