提示信息

Kotlin 构造函数

韦子钰 已关注

在 Kotlin 中,构造函数用于初始化类的对象。Kotlin 有两种类型的构造函数:主构造函数和次构造函数。

主构造函数

主构造函数是类头的一部分,通常与类定义放在一起。它可以简洁地声明属性并初始化它们。

  1. class Person(val name: String, var age: Int)

在上面的例子中,Person 类的主构造函数接收两个参数,nameage,并用于初始化相应的属性。

初始化代码

如果需要在主构造函数中添加额外的初始化代码,可以使用 init 块:

  1. class Person(val name: String, var age: Int) {
  2. init {
  3. println("Person is created with name $name and age $age")
  4. }
  5. }

次构造函数

次构造函数提供了一个备用的构造对象的方法,可以通过 constructor 关键字定义。次构造函数可以覆盖或补充主构造函数。

  1. class Person(val name: String) {
  2. var age: Int = 0
  3. constructor(name: String, age: Int) : this(name) {
  4. this.age = age
  5. }
  6. }

在上面的例子中,Person 类有一个主构造函数接收 name,还有一个次构造函数接收 nameage。次构造函数通过调用 this(name) 委托给了主构造函数,也可在次构造函数中进行额外的初始化。

关键点

  • 主构造函数简洁且直接用于为属性赋值。
  • init 块用于添加主构造函数的初始化逻辑。
  • 次构造函数提供额外的构造选项,可以通过 this 委托给其他构造函数。
  • 当类有主构造函数时,次构造函数必须调用主构造函数(直接或间接)。

使用这两种构造函数可以根据需求灵活地初始化 Kotlin 中的类实例。

    遇到难题? "AI大模型GPT4.0、GPT" 是你的私人解答专家! 点击按钮去提问......
韦子钰 关注 已关注

最近一次登录:2024-11-20 00:44:49   

暂时还没有签名,请关注我或评论我的文章
×
免费图表工具,画流程图、架构图