Android 种的枚举 Enum
1. Enum 枚举类型,用于事先定义一些值,和可以说将某种类型限定范围,在写代码或编译时用于查错。
用枚举类型作为参数,可以将参数值限定在一定范围之内,避免不必要的错误。
2. 枚举类型被编译后,枚举常量会占用更多的内存,增加IO的开销,系统给每个APP的内存是有默认上限的,虽然随着硬件的发展这个内存越来越大,但是,我们app也会随之增加更复杂的功能。因此我们尽可能减少不必要的内存损耗。
替代枚举:
1. 添加对support-annotations的依赖。
2. 举例
public class SexTest {
public final int MAN = 2;
public final int WOMEN = 3;
/**
* 只能使用 {@link #MAN} {@link #WOMEN}
*/
@Documented // 表示开启Doc文档
@IntDef({
MAN,
WOMEN,
}) //限定为MAN,WOMEN
@Target({
ElementType.PARAMETER,
ElementType.FIELD,
ElementType.METHOD,
}) //表示注解作用范围,参数注解,成员注解,方法注解
@Retention(RetentionPolicy.SOURCE) //表示注解所存活的时间,在运行时,而不会存在 .class 文件中
public @interface Sex { //接口,定义新的注解类型
}
public void setSex(@Sex int sex){
this.sex = sex;
}
public static void main(String[] args){
setSex(MAN);
}
}
本文参考了 https://www.jianshu.com/p/80180e1728d0