Java中子类重写父类方法的思想本质!
Java语言中,在子类中定义与父类同返同名同参的方法将会出现“重写(覆写)”,子类将屏蔽父类的相同方法,调用子类的方法将不会调用到父类的该方法。 |
许多初学者也许会被“覆写”一词迷惑,以为覆盖掉了父类的方法,其实这两种方法是同时独立存在的,只是子父类调用该方法的入口不一样,彼此互不干扰。
/* 需求:设计一个简单的java程序,证明子类重写父类方法的过程 思路: 1、创建父类对象,通过父类对象调用该方法 2、创建子类对象,通过父类对象调用该方法 3、通过子类对象调用该方法 */ class RerridingTest { public static void main(String[] args) { Father f = new Father(); f.show(); Child c = new Child(); f.show();//创建子类对象并没有“覆盖”掉父类自己的show()方法 c.show();//子类调用同名方法时直接访问自己定义的方法,并没有访问父类的方法 } } class Father { void show(){ System.out.println("father show run."); } } class Child extends Father { void show(){ System.out.println("child show run."); } } /* 总结:重写过程是 创建子类对象时,因为子类中已有定义该方法,故不从父类继承该方法; 调用方法时,判断调用对象在内存中是何种类型,然后到相应类型的方法区中寻找该方法 */
结果:
总结:
重写过程是创建子类对象时,因为子类中已有定义该方法,故不从父类继承该方法;调用方法时,判断调用对象在内存中是何种类型,然后到相应类型的方法区中寻找该方法。
原文来自:http://geek.csdn.net/news/detail/131740
本文地址:https://www.linuxprobe.com/java-subclass-superclass.html编辑:高军,审核员:逄增宝
本文原创地址:https://www.linuxprobe.com/java-subclass-superclass.html
本文来自博客园,作者:linux_pro,转载请注明原文链接:https://www.cnblogs.com/linuxpro/p/17295817.html
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析