Kotlin编程实战——类与对象(05)
admin
2024-01-20 01:16:28

一 概述

  • 类与继承
  • 属性和字段
  • 接口(interface )
  • 函数式(SAM)接口
  • 可见性修饰符
  • 扩展
  • 数据类(data class)
  • 密封类
  • 泛型
  • 嵌套类与内部类
  • 枚举类
  • 对象表达式与对象声明
  • 类型别名
  • 内联类(inline class)
  • 委托
  • 委托属性

二 类与继承

  • 类
  • 继承(open override )
  • 抽象类(abstract)
  • 伴生对象

三 属性和字段

  • 属性
  • 编译期常量
  • 延迟初始化属性与变量(lateinit )
  • 覆盖属性
  • 委托属性

四 接口(interface )

  • 实现接口
  • 接口中的属性
  • 接口继承
  • 解决覆盖冲突(super)

五 函数式(SAM)接口

  • 函数式接口或 SAM(单一抽象方法)接口
  • SAM 转换
  • 函数式接口与类型别名比较

六 可见性修饰符

  • 四个可见性修饰符:private、protected、internal 、public
  • 包
  • 类和接口
  • 模块

七 扩展

  • 扩展函数(MutableList.swap)
  • 扩展是静态解析的(总是取成员函数)
  • 可空接收者(Any?.toString())
  • 扩展属性(List.lastIndex)
  • 伴生对象的扩展
  • 扩展的作用域
  • 扩展声明为成员

八 数据类(data class)

  • 数据类 data class
  • 在类体中声明的属性
  • 复制(copy)
  • 数据类与解构声明(val (name, age) = User())
  • 标准数据类(Pair 与 Triple)

九 密封类

  • 密封类 sealed class
  • 用来表示受限的类继承结构
  • 是枚举类的扩展
  • 密封类的一个子类可以有可包含状态的多个实例
  • 使用 when 表达式

十 泛型

  • 协变的(covariant)与逆变性(contravariance)
  • 声明处型变(泛型接口 Source)
  • out:生产者+协变
  • in:消费者+逆变
  • 使用处型变:类型投影
  • 星投影(Function<*, *>)

十一 嵌套类与内部类

  • 嵌套类
  • 内部类(标记为 inner 的嵌套类)
  • 匿名内部类

十二 枚举类

  • 初始化
  • 匿名类
  • 在枚举类中实现接口
  • 使用枚举常量

十三 对象表达式与对象声明

  • 对象表达式
  • 对象声明(单例模式)

十四 类型别名

类型别名(typealias)

十五 思维导图

相关内容

热门资讯

山水皆有情!丽江两山一江的千年... 去过丽江、走过虎跳峡的人,大概率都听过哈巴雪山和金沙江的传说。很多人站在峡谷之下,望着奔腾不息的金沙...
活力中国调研行丨“殷”你而来 ... 9月12日,游客在殷墟博物馆“甲骨文展厅”内参观。位于河南省安阳市的殷墟博物馆新馆是首个全景式展现商...
浦江之夜赴美好相逢,第37届上... 9月12日晚,黄浦江畔灯火璀璨,第37届上海旅游节大巡游在外滩中山东一路上演。不少观众早早便来到外滩...
美丽中国丨秋韵紫鹊界 梯田入画... 这是9月11日拍摄的紫鹊界梯田(无人机照片)。 金秋九月,湖南省娄底市新化县紫鹊界梯田稻谷渐次成熟。...
中国之巅奏响《共同的节日》,千... 千吨阻尼器,“迎世赛、游上海旅游节”。9月13日,由上海市文化和旅游局指导推出上海旅游·会客│巅峰之...