Java程序 使用构造函数分配和初始化超类成员
在Java中,super指向父类,为了将一个类继承到另一个类中,我们使用extends
关键字。在编写Java程序以使用构造函数分配和初始化超类成员之前,让我们通过本篇文章中要使用的一些概念。
构造函数是什么
- 构造函数与方法非常相似,但区别在于方法定义了对象的行为,而构造函数用于初始化这些对象。
-
我们可以为方法提供任何我们想要的名称,但构造函数必须与类名称相同。
-
此外,方法可以返回一个值,但构造函数不返回任何值,因为它们不能有任何返回类型。
当用户没有创建任何构造函数时,Java编译器将自动创建一个(我们称之为默认构造函数)。
语法
示例
输出
this和super关键字
this
关键字用于区分同一类方法的本地变量与实例变量,而super
关键字用于区分超类成员与子类成员。-
this
关键字用于调用当前类的方法、构造函数和变量,而super
关键字用于调用基类的方法和构造函数。
示例1
下面的示例说明了this
关键字的用法。
输出
在上面的代码中,我们创建了一个带有string
类型参数name
的带参数的构造函数Main
。因此,在调用构造函数时,我们使用了参数“Tutorialspoint”。
示例2
下面的示例说明了super
关键字的用法。
输出
在上述代码中,类Tutorix
继承类Tutorialspoint
。在子类Tutorix
的show()
方法中,我们使用super
关键字尝试访问其父类Tutorialspoint
的变量name
。在main方法中,我们使用new
关键字创建了Tutorix
类的对象,并使用该对象调用了show()
方法。
分配和初始化超类成员的构造函数
示例
输出
在上面的代码中,我们创建了一个父类P
,其中包含三个变量和一个构造函数及三个参数。类C
是P
的子类。在C
中,我们使用super
关键字将值分配给父类P
。
结论
在本篇文章中,我们了解了构造函数与普通方法的区别,以及this
和super
关键字的用法。最后,我们创建了一个Java程序,以使用构造函数分配和初始化超类成员。