- kotlin中类不一定要与文件名相同,一个文件中可以声明多个类
- kotlin中创建对象不需要使用new关键字
- kotlin中类最简单的声明方式 class 类名
-
kotlin中类所属的包是package关键字后定义的,与类物理的包位置没有关系(建议所属包与物理包一致)
类可以包含:
- 构造函数和init块
- 属性
- 函数
- 嵌套类和内部类
- 对象声明
构造函数
- kotlin中一个类可以有一个主构造函数和多个次构造函数
- kotlin中构造函数使用constructor关键字
- kotlin中如果一个类没有显示声明构造函数,会自动生成一个无参的构造函数
主构造函数
-
如果主构造函数没有任何注解或者可见性修饰符,可以省略constructor 关键字
主构造函数中只能有参数声明,初始化代码放在init代码块中,init代码块可以有多个
主构造函数中的参数可以在init代码块和属性初始化中使用
-
init代码块和属性初始化的执行顺序与代码的书写顺序一直
次构造函数
- 次构造函数写在类{}中,使用constructor关键字后面跟参数列表
- 如果主构造函数中有参数传入,次构造函数必须直接委托或通过别的次构造函数委托调用主构造函数,委托时使用this关键字
- 委托时init块和属性初始化会当成主构造函数的一部分先于次构造函数执行