理论教育 Java程序设计教程:父子类对象指代与转化

Java程序设计教程:父子类对象指代与转化

时间:2023-11-21 理论教育 版权反馈
【摘要】:例如:2.super关键字super关键字表示的是当前对象的直接父类对象,是对当前对象的直接父类对象的引用。调用父类的构造函数,如[例5.1]中,子类构造函数所示。存在继承关系的父类对象和子类对象在一定条件下可以相互转换,需要遵循以下原则:子类对象可以被视为其父类的一个对象。父类对象不能被当做其某一个子类的对象。如果一个方法的形参定义的是父类对象,那么调用这个方法时,可以使用子类对象作为实际参数。

Java程序设计教程:父子类对象指代与转化

关键字this和super是常用来指代父类对象和子类对象的关键字。

1.this关键字

当一个方法要引用自身对象时,就使用this关键字,用this关键字的3种情况如下:

(1)想通过构造方法将外部传入的参数赋值给类的成员变量,构造方法的形参名与类的成员变量名相同。例如:

(2)假设有一个容器类和一个部件类,在容器类的某个方法中要创建部件类的实例对象,而部件类的构造方法要接收一个代表其所在容器的参数,例如:

(3)构造方法是在产生对象时被Java系统自动调用的,不能在程序中像调用其他方法一样去调用构造方法。但可以在一个构造方法中调用其他重载的构造方法,不是用构造方法名,而是用this(参数列表)的形式,根据其中的参数列表,选择相应的构造方法。例如:

2.super关键字

super关键字表示的是当前对象的直接父类对象,是对当前对象的直接父类对象的引用。所谓直接父类是相对于当前对象的其他“祖先”而言的。(www.daowen.com)

(1)调用父类的构造函数,如[例5.1]中,子类构造函数所示。

这里代码super(name)的意思是调用父类的构造函数给父类的数据成员赋初值。

(2)调用父类的方法,如[例5.1]中,子类CommonEmployee的调用方法toString()。

存在继承关系的父类对象和子类对象在一定条件下可以相互转换,需要遵循以下原则:

•子类对象可以被视为其父类的一个对象。

•父类对象不能被当做其某一个子类的对象。

•如果一个方法的形参定义的是父类对象,那么调用这个方法时,可以使用子类对象作为实际参数。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈