kotlin 中带参构造函数实现
时间: 2025-01-02 13:41:28 浏览: 8
在Kotlin中,构造函数用于初始化新创建的对象。它有两种主要形式:主构造函数(如果有默认无参构造函数可用,则为主构造函数)和次构造函数。
**带参构造函数实现**:
1. **主构造函数**:
- 如果父类没有默认无参构造函数,你需要显式地传递父类的构造参数。如[^3]所示:
```kotlin
// 子类继承父类并指定父类的构造参数
class Student2(sno: String, score: Int) : ParentClass(paramFromParent) {
// 其他初始化逻辑...
}
```
- 或者,如果你的类不需要从父类继承任何属性,可以直接定义无参构造函数并后续通过`init`块来添加逻辑[^1]:
```kotlin
class Student3(sno: String, score: Int) {
constructor() { println("Student3 init with no parent parameters") }
init {
println("Student3 init")
}
}
```
2. **次构造函数**:
- Kotlin允许定义多个构造函数,包括有参的,这称为次构造函数。例如[^2]:
```kotlin
class Person(val name: String) {
// 主构造函数
constructor(age: Int) : this("unnamed") {
println("Person constructed with age $age")
}
// 次构造函数
constructor(name: String, age: Int) : super(name) {
println("Person constructed with name $name and age $age")
}
}
```
这些构造函数允许你在创建实例时以多种方式初始化对象的状态。
阅读全文