7.3 Kotlin构造函数

本文详细介绍了Kotlin中的构造函数,包括主构造函数的定义、初始化实例、默认值设定,以及次构造函数的创建、调用方式。通过示例展示了如何在构造器中设置属性初始值和使用初始化程序块。
摘要由CSDN通过智能技术生成


在Kotlin中,构造函数(Constructor)是一个类似于方法的代码块。 声明构造函数的名称与类的名称相同,后跟括号()。 构造函数用于在创建对象时初始化变量。构造函数也叫构造器

Kotlin 中的构造器类型

在kotlin中构造函数分为主构造函数(Primary Constructor)和次构造函数(Secondary constructory)
构造器类型

主构造函数 Primary Constructor

主构造函数定义

主构造函数用于初始化类,它在类标题中声明,定义如下:

class Person constructor(var name: String, var age: Int) {
   
    
}

其中constructor可以省略

class Person (var name: String, var age: Int) {
   

}

在这里 constructor(var name: String, var age: Int)(var name: String, var age: Int) 声明为类头的一部分,这是Persion类的主构造器,它初始化Persion类的 name与age属性。

初始化构造函数实例

下面我们创建一个实例,用"Alfres"与28来初始化nameage属性

class Person (var name: String, var age: Int) {
   

}

fun main(args:Array<String>){
   
    val person = Person("Alfres",28)
    println("name = ${
     person.name}, age = ${
     person
Kotlin 中,构造函数用于创建类的实例。Kotlin 中的构造函数有两种类型:主构造函数和次构造函数。 1. 主构造函数: - 主构造函数是类头的一部分,它跟在类名后面。 - 主构造函数可以包含参数,这些参数可以在类的初始化过程中使用。 - 主构造函数可以有可见性修饰符(如 `public`、`private` 等)。 - 主构造函数没有主体,它的逻辑被放在初始化块中。 下面是一个使用主构造函数的示例: ```kotlin class Person(firstName: String, lastName: String) { init { println("Creating a person: $firstName $lastName") } } ``` 在上面的示例中,`Person` 类有一个主构造函数,它接受 `firstName` 和 `lastName` 作为参数。在初始化块中,我们打印出正在创建的人的信息。 2. 次构造函数: - 次构造函数是可选的,在类中可以定义多个次构造函数。 - 次构造函数必须通过 `constructor` 关键字声明。 - 次构造函数可以调用主构造函数或其他次构造函数。 下面是一个使用次构造函数的示例: ```kotlin class Person(firstName: String, lastName: String) { init { println("Creating a person: $firstName $lastName") } constructor(firstName: String) : this(firstName, "") { println("Creating a person with only first name: $firstName") } } ``` 在上面的示例中,`Person` 类有一个主构造函数和一个次构造函数。次构造函数只接受 `firstName` 参数,并调用了主构造函数来初始化 `lastName`。 这是关于 Kotlin 构造函数的简单介绍。希望对你有帮助!如有更多问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Alfred Gao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值