kotlin中注解替代枚举

枚举便于代码理解和提供了类型安全,不过由于在android平台上,枚举占用内存过多的问题,一般不推荐使用枚举,官方除了两个注解类,IntDef和StringDef,用来提供枚举的替代方案。本文主要通过例子来讲解如何在kotlin中用注解替代枚举。本文项目的示例地址:https://github.com/hanyuejian/kotlinannotation

@IntDef 表示整数类型的带注释元素,示例

用int类型来表示网络的请求状态

@String

kotlin中注解替代枚举_第1张图片

用String类型来表示商品的质量

@Target 表示注释修饰的对象范围

kotlin中注解替代枚举_第2张图片

有这么几类,我们可以更具实际情况选用

@Retention 表示注释是存储在二进制输出中还是可见以进行反射

kotlin中注解替代枚举_第3张图片

有这么三类

kotlin中注解替代枚举_第4张图片

这是一个完整的@IntDef示例

kotlin中注解替代枚举_第5张图片

annotation class 是kotlin中一个专门的注解类

这是一个完整的@StringDef示例

kotlin中注解替代枚举_第6张图片

下面给出一个简单的@IntDef的用法示例

kotlin中注解替代枚举_第7张图片

 

下面是一个简单的@StringDef的示例类

kotlin中注解替代枚举_第8张图片

 

 

你可能感兴趣的:(kotlin)