美文网首页
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