每一个次构造函数须要委托给主构造函数, 能够直接委托或者经过别的次构造函数间接委托。委托到同一个类的另外一个构造函数用 this 关键字便可ide
class Person {
constructor(parent: Person) {
parent.children.add(this)
}
}函数
class Person(val name: String) { constructor(name: String, parent: Person) : this(name) { parent.children.add(this) } }
kotlin class 默认是final 不能继承this
非要继承必须声明成open spa
abstract 默认是open的。code
final 不能被覆写 在kotlin中默认全部的方法和类都是final属性
open 能够被覆写 须要被明确指出
abstract 必需要覆写 不能被实例化,默认具备open属性。
override 覆写超类的方法 若是没有被指定为final,则默认具备open属性
blog
若是派生类有一个主构造函数,其基类型能够(而且必须) 用基类的主构造函数参数就地初始化。继承