java子类和父类有相同成员_Java -- 父类和子类拥有同名的成员变量的情况
Java – 父类和子类拥有同名的成员变量取值情况
参考文章 结论:
当子类的成员变量与父类同名时,若对该成员变量进行操作的方法继承于父类,则改变和获取的是父类的成员变量。若对该成员变量进行操作的方法为子类所独有,或override父类,则改变和获取的是子类自己的成员变量。
当子类拥有与父类同名的成员变量时,父类的成员变量并不会被覆盖,而是与子类的成员变量分别存储在不同的空间,其值仍然可以被改变和访问。
class Employee{
private String title = "Employee";
public void setTitle(String title) {
this.title = title;
}
public String getTitle() {
return this.title;
}
}
class Manager extends Employee{
private String title = "Manager";
}
class Director extends Employee{
private String title = "Director";
public String getTitle() {
return this.title;
}
}
public class SameName {
public static void main(String[] args) {
Employee e = new Employee();
Employee m = new Manager();
Director d = new Director();
System.out.println(e.getTitle());
//子类Manager的getTitle方法继承于父类Employee,
//因此调用时,访问的是父类的同名成员变量
System.out.println(m.getTitle());
//子类Director override父类的getTitle方法,
//因此调用时,访问的是子类自己的成员变量
System.out.println(d.getTitle());
//子类Director的setTitle方法继承于父类Employee,
//因此调用时,改变的是父类的同名成员变量
d.setTitle("President");
System.out.println(d.getTitle());
}
}
运行输出结果为
Employee Employee Director Director
因此,当子类的成员变量与父类同名时,若对该成员变量进行操作的方法继承于父类,则改变和获取的是父类的成员变量。
若对该成员变量进行操作的方法为子类所独有,或override父类,则改变和获取的是子类自己的成员变量。
java子类和父类有相同成员_Java -- 父类和子类拥有同名的成员变量的情况相关推荐
- java继承时父类常量覆盖吗_Java父类继承中的static和final用法
1.父类中staitic修饰的静态方法,不能覆盖.不能继承. 2.父类中staitic修饰的变量或常量,能覆盖.不能继承. static修饰的变量和方法,只属于类本身,不属于对象:当声明一个对象时,并 ...
- java 父类私有成员_java父类私有成员
public class UnSafeSequence { public class TestMath{ private TestMath(){ System.out.println("父类 ...
- java子类访问父类私有成员_Java中子类可以继承父类的私有成员,但是不能(直接)访问!!!...
今天学习Java三大特征之一:继承的时候,产生了一些疑问,最后通过网上查找和各位网友的帮助,终于拔开云雾见日出.下面进入正题: 首先:子类对象拥有父类中的所有属性和方法:在这里,很多人会问构造器可以继 ...
- c 子类对象 访问父类对象受保护成员_java面向对象总结
前言:文章参考<java疯狂讲义>进行总结和归纳,知识要进行输出才算真正的有用. 在java的世界里,一切皆为对象,类是对对象的抽象,来一个例子:Person类 public 有了类,就可 ...
- java 子类 同名参数_Java -- 父类和子类拥有同名变量
Java -- 父类和子类拥有同名变量 Java -- 父类和子类拥有同名变量 Java – 父类和子类拥有同名变量 请仔细观察系列两段程序的不同之处:一个Son类重写print方法,另一个则没有重写 ...
- java 父类是抽象类 定义private的属性 子类继承_java继承、多态、接口、抽象类定义及应用...
继承:关键字extends java 中继承是单继承 允许多个子类继承一个父类,不允许一个子类继承多个父类. 继承是继承父类的所有属性和方法,但并不是所有的属性和方法都可被子类调用: 子类继承父类是必 ...
- 在java继承机制中 父类中的私有_Java中子类能继承父类的私有属性吗?
前段时间去听老师讲课的时候,老师告诉我子类是可以继承父类所有的属性和方法的.当时我是极其疑惑的,因为之前学校考试时这个考点我记得很清楚:子类只能继承父类的非私有属性和方法.老师给我的解释是这样的--先 ...
- java 子类的同名方法_java 父类子类有同名方法时如何调用的实现
父类引用默认调用子类重写的方法 如果父类的引用p指向了子类的实例,则通过这个引用p访问同名方法时,调用的是子类重写的方法. 父类引用p可以指向不同的子类,调用不同子类重写的不同的同名方法,进而达到类间 ...
- java如何调用父类的实例对象_java子类调用父类的方法中包含子类重写的实例方法...
java子类调用父类的方法中包含子类重写的实例方法 # 看题目是不是很绕,这个我也不知道怎么才能更简单的表达了 # 先看代码: public class Common { public static ...
最新文章
- 内网渗透测试:NTLM Relay攻击分析
- UiBot Creator v1.2火热体验中……
- 服务器硬盘 主板,服务器主板和普通主板有什么区别?
- 轻轻的你来了,悄悄的你走了,邓总没有带走一个bug
- 月入1万的工作,招不到人,怎么办?
- java中JTextArea类_Swing JTextArea类
- Checkio代码闯关小计
- Django应用部署 - 上线指南
- 经典神经网络 -- ResNet : 设计原理与pytorch实现
- 加州ucla 计算机学校,美国加州大学洛杉矶分校UCLA计算机硕士CS录取
- 【报错】CUDA error: device-side assert triggered
- 2012年腾讯实习生笔试附加题
- 《降龙之剑》刷马坐标 BOSS坐标,鉴定出好马的时间段
- 电脑之间快速传输超大文件(100GB以上)的方法
- 【拒绝内卷】狼吃羊的AI奖励机制不合理: 内卷,如何解决?
- 先验概率和后验概率那点事儿
- STM32CubeMX生成工程失败
- unity3d答题系统
- css新特性:线性渐变详解(重复性线性渐变、径向渐变、重复性径向渐变的使用)
- ibm服务器 t系列,IBMT