Kotlin 构造器,构造器的主要目的是初始化类的属性。在创建类的对象时调用构造器。在 Kotlin 中,我们有两种类型的构造器 – 主构造器和次要构造器。在本指南中,我们将通过示例学习主要和次要构造器,我们还将了解初始化程序块。
Kotlin 中的构造器类型
- 主构造器 – 初始化类的属性
-
次要构造器 – 初始化类的属性,我们可以在次要构造器中有额外的初始化代码。
Kotlin 主构造器
主构造器是初始化类的最简单方法。它被声明为类头的一部分。在下面的示例中,我们将构造器(val name: String, var age: Int)
声明为类头的一部分。这是我们的主要构造器,它初始化类Student
的name
和age
属性(数据成员)。
输出:
Kotlin 构造器中的默认值
我们也可以像在下面的例子中那样在 Kotlin 构造器中指定默认值。在这里,我们将默认学生姓名指定为"Student"
,默认学生年龄为 99。
我们创建了这个类的三个对象,一个具有名称和年龄,第二个对象只有名称,第三个对象没有名称和年龄。正如您在输出中所看到的,创建类的对象时默认值被传递的值覆盖。
输出:
Kotlin 构造器中的初始化程序块
让我们学习在类的构造器中有额外的初始化代码。在下面的例子中,我们有一个初始化块,我们在构造器中使用init
声明了它。在这个块中,我们可以有额外的初始化逻辑。
输出:
Kotlin 次要构造器
Kotlin 中的次要构造器是使用constructor
关键字创建的。他们在继承中发挥着重要作用。我建议您在通过次要构造器之前先阅读继承主题。
次要构造器的语法
次要构造器的示例
这是如何在类中声明次要构造器的简单示例。
输出:
从另一个调用一个次要构造器
在这个例子中,我们有两个次要构造器,一个具有一个参数,另一个具有两个参数。我们使用this
关键字从另一个构造器调用构造器。
输出:
带有父类和子类的 Kotlin 次要构造器示例
在下面的例子中,我们有两个类College
,它是父类和子类Student
。这里子类的次要构造器使用super
关键字调用父类的次要构造器。
输出: