kotlin学习笔记——枚举、封闭类
来源:互联网 发布:智能手表软件下载 编辑:程序博客网 时间:2024/06/07 10:18
Kotlin学习笔记系列:http://blog.csdn.net/column/details/16696.html
1、枚举
kotlin中提供类枚举的实现,与java相同。枚举可以带参数,如
enum Icon(val res: Int){ MENU(R.drawable.menu), BACK(R.drawable.back)}val backIcon = Icon.BACK.res枚举可以通过字符串匹配名字来获取,也可以得到所以枚举的array,如
val back: Icon = Icon.valueOf("BACK")val icons: Array<Icon> = Icon.values()枚举也提供一些函数来获取名字和声明的位置
val name: String = Icon.BACK.name()val position: Int = Icon.BACK.ordinal()枚举根据顺序实现了Comparable接口,所以可以很方便的进行排序
2、封闭类sealed
用sealed修饰的类叫封闭类,它类似枚举enum,如:
sealed class Icon{ class Menu(val id: Int) : Icon() class Back(val url: String) : Icon() object None : Icon()}可以看到它有固定个数的子类,而且子类与父类一起被定义出来。与enum不同的是,枚举的实例是唯一的,而封闭类可以有多个实例,它可以有不同的状态。
封闭类可以与when配合使用,如:
val result: String = when(icon){ is Menu -> "xxx" + icon.id is Back -> icon.url is None -> ""}
3、异常Excaption
kotlin中的异常与java中相似,但是kotlin中的异常都是未经检查,表示不会强迫在任何地方使用try/catch。
(kotlin中有throw关键字,但是没有throws关键字)
throw与try/catch的使用与java中一样,但是在kotlin中它们都是表达式都可以返回值。具体见kotlin学习笔记——过程控制和Range表达式
总结:
到本文章为止,kotlin学习笔记系列就结束了,这个系列主要是整理了学习kotlin过程中的一些知识点。但是kotlin学习笔记系列的专栏还会继续,会不定时的分享一些在使用kotlin开发过程中遇到的问题和新的知识,谢谢!
阅读全文
0 0
- kotlin学习笔记——枚举、封闭类
- Kotlin学习之枚举类
- Kotlin学习笔记——Kotlin中的null安全
- kotlin学习笔记001——kotlin简介
- Kotlin学习笔记——标准库kotlin
- Kotlin学习笔记——标准库kotlin.system
- Kotlin学习笔记——标准库kotlin.io
- Kotlin学习笔记——标准库kotlin.collections
- Kotlin学习笔记——安装配置kotlin
- kotlin学习笔记——Kotlin Android Extensions
- Kotlin学习之-5.10 枚举类
- Kotlin学习笔记——类和对象
- Kotlin学习笔记——类和对象
- Kotlin学习笔记——内部类和嵌套类
- Kotlin学习笔记——类和对象
- kotlin学习笔记——类、函数、接口
- kotlin学习笔记之——写一个完整类
- Kotlin学习笔记——基本类型
- 《android studio ndk环境配置》
- BASE64Encoder及BASE64Decoder报错的正确用法
- 解决Springboot运行时Postgrasql报错:ERROR SqlExceptionHelper:146
- 牛客网剑指offer:栈的压入弹出序列是否匹配
- Android/Java网络加载框架Retrofit(三)结合RxJava2与RxAndroid2
- kotlin学习笔记——枚举、封闭类
- web.xml is missing and <failOnMissingWebXml> is set to true错误
- 找不到系统安全日志/var/log/secure文件的问题
- 如何更好的使用阿里云资源编排ROS免费教程
- 什么是设计模式?为什么要使用设计模式?有什么好处?
- Dialog常见问题(布局错误、黑边、圆角、异常)
- 数据库集群技术
- 数论知识
- XML特殊字符(如:换行)