JavaSE系列视频课程之注解和枚举(九)

¥1.00 试听

 学院:老牛课堂

 课时:共 2节 · 19分钟

 有效期:永久有效

 课程目标:讲解Java 枚举和注解

 适合人群:Java工程师,Java高级程序员,Java架构师

 课程介绍

一、我们见过的注解(Annotation)

@Override

@Deprecated

@SuppressWarnings

二、元注解

@Target

定义注解的修饰范围(如果注解没使用此注解,则可以用在任何范围)

ElementType枚举指定具体范围(包,类,字段,方法,参数,返回值等)

@Retention

定义注解被保留的阶段(如果注解没使用此注解,则默认是CLASS)

RetentionPolicy枚举指定具体阶段

CLASS 保留在.class文件,运行时无法获取(默认值)

RUNTIME 保留在.class文件中,运行时可以获取(自定义注解一般使用这个)

@Deprecated

SOURCE 仅保留在.java文件中,编译时丢弃

如:

@Override

@SuppressWarnings

 

@Documented

指定注解是否应该出现在API文档中

@Inherited

指定注解是否应该被子类继承(仅用于修饰范围为类的注解)

 

三、自定义注解

语法:

编写元注解

public @interface 注解名{

定义参数

}

四、定义参数

1、支持的参数数据类型

a)所有基础类型

b)String

c)Class

d)所有枚举类型

e)所有注解类型

f)以上类型的数组

2)参数定义规则

a)要么public,要么默认

b)参数类型只能是上面几种类型

c)参数名称为value,则使用枚举时可省略参数

d)没定义默认值的参数在使用时必须传参

e)参数的默认不能为null

 

一、枚举(Enum)的语法

1)声明的语法与class类似,把class替换为enum

2)直接属性元素,用逗号隔开即可

 

二、枚举的使用

1)访问枚举元素

枚举.元素

2)如果字符串转换枚举元素

枚举.valueOf();

3)获取所有枚举

枚举.values();

4)枚举元素转字符串

元素.name();

5)获取元素在枚举中的序号

元素.ordinal();

 

三、枚举和switch配合

switch天生支持enum

switch(enum/int/char/String(JDK1.7+))

四、枚举的作用

1)定义常量(和在接口中定义静态常量相比比较简洁)

2)单例模式

五、枚举的原理

枚举本质也是一个类,其中定义的元素是此类的几个静态实例

 

课程评价

人生无悔

2018-02-03
实用性很强,视频画面清晰。

课课家教育

未登录