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

前言

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 Color(val value: String) {
        GREY("grey"),
        RED("red"),
        GREEN("green");
    }

枚举初始化

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的类和继承相关,嵌套类相关,接口相关。 类 Kotlin的类的声明与Java一样,使用cla...
    叫我旺仔阅读 14,014评论 4 14
  • Java 内部类 分四种:成员内部类、局部内部类、静态内部类和匿名内部类。 1、成员内部类: 即作为外部类的一个成...
    ikaroskun阅读 1,246评论 0 13
  • 前言 人生苦多,快来 Kotlin ,快速学习Kotlin! 什么是Kotlin? Kotlin 是种静态类型编程...
    任半生嚣狂阅读 26,252评论 9 118
  • 一、介绍 内部类是指在一个外部类的内部再定义一个类。类名不需要和文件夹相同。内部类可以是静态static的,也可用...
    一只好奇的茂阅读 998评论 4 21
  • 详细看http://wuxiaolong.me/2016/03/30/gradle4android1/ 特此记录之...
    小相柳阅读 190评论 0 0