没有合适的资源?快使用搜索试试~ 我知道了~
5-java进阶-枚举与注解1
资源详情
资源评论
资源推荐
枚举与注解
枚举
注解
意义:当可能有限,并且可以列举出来时,直接为这个做一个类,提供选择,ABCD
方式
Enum类
自定义枚举类
enum关键字定义
创建枚举类,class Seasons
定义变量,必须用修饰符修饰不可变的状态。private final
利用私有带参构造器给变量赋值,private Season(String season){ }
赋值,关键字 public static final,变成外界可以调用的常量
其它诉求加上,就成了一个完整的类
1.列举出所有的情况,用逗号联系,SUMMER("夏天","烈日炎炎"),
创建关键字,enum Seasons{ }
2.定义变量,构造器赋值,其他诉求
意义:偷懒一步到位
不需要改写toString方法,默认打印出其名字
只有enum关键字定义的枚举可以使用此类的方法
常用方法
toString,打印名字
values,返回枚举类型的对象数组,可用来遍历数组
valueOf(String name),用String类的同名,去查找里面的enum对象
继承接口时,可以在情况后面去override,SUMMER("夏天","烈日炎炎")
{@override}
意义:也是程序的一部分,但是不改变实际代码的逻辑,添加一些显示信息
示例
自定义注解
文档相关注解
编译时格式检查
框架中的作用,跟踪代码依赖性,实现替代配置文件功能
@author ,提示作者
@version ,提示版本
还有很多,当把鼠标放在上面即会显示这些信息
@override,如果下面的代码不是重写,就会报错,确保就是重写
@Deprecated,表示此部分代码过时了有更好的选择
@SuppressWarnings,抑制编译器的警告,如变量未使用的灰色
参照@SuppressWarning格式定义
单独成一个Annotation文件,public @interface name{ }
内部成员用value表示,可以自带default值
如果内部啥也没有,则表示标识符,如@override
元注解
对注解进行注解的注解
四种元注解
jdk8新特性
@Retention,表示所修饰Annotation的生命周期
@Target,表示所修饰Annotation可修饰的类型
@Document,表示被javac解析时,被保留下来
@Inherited,修饰的Annotation具有继承性
多注解
重复注解:
先创建一个注解数组的Annotations类,里面Annotation[] value
再将MyAnnotation设置为@Repeatable(MyAnnotations.class)
两个@Retention、@Target必须一致
在@Target里面加上TYPE_USE,表示该注解能写在使用类型的任何语句中
忧伤的石一
- 粉丝: 24
- 资源: 332
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0