与Java一样,枚举类是一种特殊的类,kotlin可以通过enum class关键字定义枚举类。 2.注意点 枚举类可以实现0~N个接口; 枚举类默认继承于kotlin.Enum类(其他类最终父类都是Any),因此kotlin枚举类不能继承类; 非抽象枚举类不能用open修饰符修饰,因此非抽象枚举类不能派生子类; 抽象枚举类不能使用abstract关键...
我给你一个例子和结果,你就清楚多了 enum class ProtocolState { WAITING { override fun signal() = TALKING }, TALKING { override fun signal() = WAITING }; abstract fun signal(): ProtocolState }fun main(args: Array<String>) { val ev:ProtocolState = ProtocolState.WAITING println(ev.signal()...
class People(var name:String,var number:Int){} enum class PeopleEnum(private var people:People) { //枚举值括号里的参数要与主构造函数的入参保持一致 RIGHT_HAND(People("右手",80)), LEFT_HAND(People("左手",80)), RIGHT_FOOT(People("右脚",160)), //枚举要以 ; 结尾 LEFT_FOOT(People("...
enum class JvmLang {Java, Kotlin, Scala 反编译 class 后会发现,JvmLang 继承自 Enum。 public final class JvmLang extends Enum{private JvmLang(String s,int i){super(s,i);public static final JvmLang Java;public static final JvmLang Kotlin;public static final JvmLang Scala;static{Java = new ...
与Java一样,枚举类是一种特殊的类,kotlin可以通过enum class关键字定义枚举类。 枚举类可以实现0~N个接口; 枚举类默认继承于kotlin.Enum类(其他类最终父类都是Any),因此kotlin枚举类不能继承类; 非抽象枚举类不能用open修饰符修饰,因此非抽象枚举类不能派生子类; ...
在任何一门面向对象编程的语言里,类(class)是非常基础、但也是非常重要的一项组成,通俗的说就是万般皆对象,而所说的对象就是我们生成的类。Kotlin也是如此,下面详细为大家介绍Kotlin中的类的组成结构、函数、声明等。 目录 一、类的声明 1、关键字 声明类的关键字为class ...
kotlin枚举类enumclass kotlin枚举类enumclass 1.概念 与Java⼀样,枚举类是⼀种特殊的类,kotlin可以通过enum class关键字定义枚举类。2.注意点 枚举类可以实现0~N个接⼝;枚举类默认继承于kotlin.Enum类(其他类最终⽗类都是Any),因此kotlin枚举类不能继承类;⾮抽象枚举类不能⽤open修饰符修饰,因此...
enumclassJvmLang{Java, Kotlin, Scala} 反编译 class 后会发现,JvmLang 继承自 Enum。 publicfinalclassJvmLangextendsEnum{privateJvmLang(String s,inti){super(s,i);}publicstaticfinalJvmLang Java;publicstaticfinalJvmLang Kotlin;publicstaticfinalJvmLang Scala;...static{Java =newAction("Java",0);Kotlin...
5.Kotlin入门(五):类与继承 6.Kotlin入门(六):内联方法 7.Kotlin入门(七):enum,data,sealed,object enum类 与java不同,Kotlin中enum当做class的修饰符使用 1.常见用法: enumclassDirection{NORTH,SOUTH,WEST,EAST} 2.有成员属性时: enumclassColor(valrgb:Int){RED(0xFF0000),GREEN(0x00FF00),BLUE(0x0000...
很多时候在使用enum的时候需要根据原始值rawValue来得到具体的enum的一个类型。在kotlin里面如何使用呢? 例如: enum class Foo(val rawValue: Int) { FIRST(1), SECOND(2); } 如果给数值2如何得到Foo.SECOND? 做法就是添加一个companion object. enum class Foo(val rawValue: Int) { ...