Kotlin 枚举类、数据类、内联类及无符号整数详解
1. 枚举类的特性与使用
在 Kotlin 中,枚举类有着独特的特性和使用方式。枚举常量体中的成员不会暴露给外部代码,例如下面的代码:
enum class WeekDay {
MONDAY { fun startWork() = println("Work week started") },
TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
}
fun main() = WeekDay.MONDAY.startWork() // Error
上述代码中,尝试在外部调用 startWork 方法会报错,因为该方法是在枚举常量体内部定义的。不过,这些成员在为枚举类或其超类型中的虚方法提供实现时通常很有用。
所有 Kotlin 枚举类都是 kotlin.Enum 类的隐式子类型,该类包含一组可供任何枚举值使用的通用函数和属性。每个枚举值都有 ordinal 和 name 两个属性,分别表示其在枚举类体中定义的从零开始的索引和值名称,示例如下:
enum class Direction {
NORTH, SOUTH, WEST, EAST;
}
fun main() {
println(Direction.WEST.name) // WES
超级会员免费看
订阅专栏 解锁全文
29

被折叠的 条评论
为什么被折叠?



