美文网首页
Kotlin for android学习五:嵌套类 内部类 枚举

Kotlin for android学习五:嵌套类 内部类 枚举

作者: crossroads | 来源:发表于2017-10-20 16:04 被阅读25次

前言

kotlin官网kotlin教程学习教程的笔记。

一、嵌套类

类嵌套在另一个类之内

class Outer {
    private val oa = 1
    class Nested {
        fun foo() = oa //unresolved reference错误
    }
}
    val demo=Outer.Nested().foo()

二、内部类

类可以使用 inner 关键字来标记, 然后就可以访问外部类(outer class)的成员. 内部类会保存一个引用, 指向外部类的对象实例

class Outer {
    private val oa = 1
    inner class Inner {
        fun foo() = oa //ok
    }
}
    val demo2=Outer().Inner().foo()

三、枚举类

enum class EColor{
    RED,GREEN,BLUE
}
    val color=EColor.BLUE

枚举初始化

enum class EColor(val rgb:Int){
    RED(0xFF0000), GREEN(0x00FF00), BLUE(0x0000FF)
}
    val color=EColor.BLUE
       for (a in EColor.values()){
           print("$a ")
       }
        println()
        println(EColor.valueOf("BLUE"))
        println("name=${color.name} ; ordinal=${color.ordinal};rgb= ${color.rgb}")
        println(enumValueOf<EColor>("RED"))
        for (a in enumValues<EColor>()){
            print("$a ")
        }
        println()
输出结果

如果给定的名称不能匹配枚举类中定义的任何一个枚举常数值, valueOf() 方法会抛出 IllegalArgumentException 异常.

相关文章

网友评论

      本文标题:Kotlin for android学习五:嵌套类 内部类 枚举

      本文链接:https://www.haomeiwen.com/subject/sdjvuxtx.html