Jia*_* Li 5 constructor kotlin primary-constructor
Kotlin具有两种构造函数,主要构造函数和次要构造函数。拥有两种类型的目的是什么?我认为,这会使代码更加复杂和不一致。如果两种类型的构造函数都创建类的对象,则它们对类同样重要。
同时,多个初始化程序还会带来混乱并降低可读性。
当您需要将作为构造函数参数传递给实例的属性的值保存时,主构造函数涵盖了流行的用例。
基本上,主构造函数为声明属性和从构造函数参数初始化它提供了一种简写。
请注意,您完全可以在没有主构造函数的情况下执行相同操作:
class Foo {
val bar: Bar
constructor(barValue: Bar) {
bar = barValue
}
}
Run Code Online (Sandbox Code Playgroud)
但是,由于这种情况在代码库中确实经常发生,因此 Kotlin 主要构造函数的作用是减少此处的样板:
class Foo(val bar: Bar)
Run Code Online (Sandbox Code Playgroud)
辅助构造函数可以补充或替换主要构造函数,以支持单个类的多个构造例程。
| 归档时间: |
|
| 查看次数: |
471 次 |
| 最近记录: |