如何解析Java的方法覆盖与变量覆盖
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章给大家介绍如何解析Java的方法覆盖与变量覆盖,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。首先,我们看看关于重载,和覆盖(重写)的简明定义:方法重载:如果有两个方法的方
千家信息网最后更新 2026年11月01日如何解析Java的方法覆盖与变量覆盖
这篇文章给大家介绍如何解析Java的方法覆盖与变量覆盖,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
首先,我们看看关于重载,和覆盖(重写)的简明定义:
方法重载:如果有两个方法的方法名相同,但参数不一致,哪么可以说一个方法是另一个方法的重载。
方法覆盖:如果在子类中定义一个方法,其名称、返回类型及参数签名正好与父类中某个方法的名称、返回类型及参数签名相匹配,那么可以说,子类的方法覆盖了父类的方法
我们重点说说覆盖问题,以如下代码为例:
public class People { public String getName() { return "people"; } } public class Student extends People { public String getName() { return "student"; } } public static void main(String[] args) { People p=new People(); System.out.println(p.getName());//运行结果为people Student s=new Student(); System.out.println(s.getName());//运行结果为student People pp=new Student(); System.out.println(pp.getName());//运行结果为student }上述结果说明:student类的getName方法成功覆盖了父类的方法
我们再来看看变量的覆盖:
public class People { protected String name="people"; } public class Student extends People { protected String name="student"; } public static void main(String[] args) { People p=new People(); System.out.println(p.name);//运行结果为people Student s=new Student(); System.out.println(s.name);//运行结果为student People pp=new Student(); System.out.println(pp.name);//运行结果为people }通过运行结果我发现:变量的覆盖实际上与方法的不尽相同。
用我自己的话说:变量的覆盖最多只能算是半吊子的覆盖。
要不然,向上转换与不会发生数据丢失现象
People pp=new Student(); System.out.println(pp.name);//运行结果为people
就我个人的经验来说:变量的覆盖很容易让人犯错误.让人感觉又回到了C++的继承[这里不是指C++带virtual的继承]
***我们再来看一段代码:
public class People { protected String name="people"; public String getName() { return name; } } public class Student extends People { protected String name="student"; public String getName() { return name; } }main(String[] args) { People p=new People(); System.out.println(p.getName());//运行结果为people Student s=new Student(); System.out.println(s.getName());//运行结果为student People pp=new Student(); System.out.println(pp.getName());//运行结果为student }显然,如此的覆盖,才是对我们更有用的覆盖,因为这样才能达到:把具体对象抽象为一般对象的目的,实同多态性。
关于如何解析Java的方法覆盖与变量覆盖就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
方法
结果
运行
变量
参数
相同
代码
内容
名称
子类
对象
更多
类型
帮助
不错
多态
简明
一致
成功
两个
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技公司排名
广州淘业互联网络科技
广州紫鲸互联网科技有限公司
互联网电商科技
互联网品科技
科技制造互联网公司
互联网 科技
致聘互联网科技
科技互联网公司logo
有木互联网科技
互联网高科技企业
成都铂石互联网科技做什么的
新兴科技互联网创新大赛颁奖典礼
元气玛特互联网科技公司是外包吗
云南互联网科技学费
第三届互联网大会安防黑科技
互联网金融金融科技
承德科技产业互联网平台
安徽九吞吴互联网科技有限公司
高科技和互联网的现代国家
互联网科技公司发展
互联网科技上市公司
链环科技传统企业怎么转型互联网
烟台灵鸽互联网科技有限公司
风投北京互联网科技
工业互联网科技创业
陕西九四连强互联网科技有限公司
互联网金融运营模式中的金融科技
第三届互联网大会安防黑科技
山东蛋芒互联网科技有限公司