Kotlin 类篇
文章目录
- Kotlin 类篇
-
- 正文
-
- 类、对象、实例
-
- 1. kotlin 的 val vs java 的 final
- 2. Java 的 Object vs Kotlin 的 Any
- 3. 创建基本类及其实例
- 4. kotlin 构造器, constructor 关键字
- 5. init 关键字,初始化代码块
- 6. kotlin 的 companion object 伴生对象,包裹静态属性、方法,都在
- 7. data 关键字快速创建DTOs
- 8. 类型判断和强制,is 和 as 关键字
- 9. kotlin 类继承关系
- 10. 抽象关键字 abstract
- 11. kotlin 的 getter & setter
- 12. 监测一个 lateinit var 是否初始化
- 13. 类内不同地方声明的可见性
- 14. kotlin object 关键字
- 15. 密封类 sealed
正文
类、对象、实例
1. kotlin 的 val vs java 的 final
kotlin 的 val 和Java 的 final 类似,只是多了类型推断而可以少写个单词,懒癌的福音
2. Java 的 Object vs Kotlin 的 Any
Java 是一切皆对象,kotlin 的 Any 命名就很有趣,更直观
3. 创建基本类及其实例
//kotlin 没有 new
val rectangle = Rectangle(5.0, 2.0)
val triangle = Triangle(3.0, 4.0, 5.0)
4. kotlin 构造器, constructor 关键字
- 主构造器,private constructor.类名后面的括号
//[1] 当然主构造器也可省略
class User constructor(name: String) {
}
- 自动生成字段
//[1] 主构造器字段前面写上 val ,自动生成字段
class User constructor(val name: String) {
}
- 主构造器添加注解
class Customer public @Inject constructor(name: String) {
/*……*/ }
- 次构造器
//[1] 次构造器
class User constructor(var name:String){
//直接调用主构造器
constructor(name:String, id:Int):this(name){
}