2017-06-02 每日一记 java枚举和注解
2017-06-28 14:42
225 查看
一、查询数据库同一张表的两条记录中,是否有字段相同。
select * from tb_parking_info p1, tb_parking_info p2 where p1.record_no = p2.record_no and p1.IRecNo != p2.IRecNo;
二、枚举类
1、如何自定义枚举类(见06-01中的第二部分)
2、如何使用enum关键字定义枚举类
enum Session {
// 创建的对象必须放在开头,且使用","隔开
SPRING("Spring", "春天"),
SUMMER("summer", "夏天"),
AUTOUN("autumn", "秋天"),
WINTER("winter", "冬天");
// 其他属性及方法在此定义
}
> 常用方法
Object[] values(); // 返回所有的枚举对象,以数组的形式。
Object valueof(String name); // 根据枚举对象名称,返回枚举对象
> 如何让枚举类实现接口
interface Info {
void show();
}
enum Session implements Info {
// 创建的对象必须放在开头,且使用","隔开
SPRING("Spring", "春天") {
public void show() {
...
}
},
SUMMER("summer", "夏天") {
public void show() {
...
}
},
AUTOUN("autumn", "秋天"),
WINTER("winter", "冬天");
// 其他属性及方法在此定义
...
// 在此处重新方法会显示相同的内容
}
三、注解Annotation
要点:
JDK内置的基本注解类型(3个)
自定义注解类型
对注解进行注解(4个)
利用反射获取注解信息
1、概述
a、Annotation 其实就是代码里的特殊标记,在编译,类加载,运行时被读取,并执行相应的处理。
通过使用Annotation,可以在不改变原有逻辑的情况下,在源文件中嵌入以下补充信息。
b、Annotation 可以像修饰符一样被使用,可用于修饰包、类、构造器、方法、成员变量、参数、局部变量等,
这些信息被保存在Annotation的"name=value"中。
c、Annotation 能被用来为程序元素设置源数据。
2、JDK提供的常用注解
@Override :限定重写父类方法,该注释只能用于方法
在方法名拼写错误是,可以报错。
@Deprecated :用于表示某个程序元素(类,方法等)已过时
@SuppressWarnings :抑制编译器警告,即不显示黄色叹号。
3、如何自定义一个注解(使用较少)
public @interface 注解名 {
}
4、元注解:用于修饰其他注解的注解。
A、@Retention(RetentionPolicy.value) :
value取值如下:
SOURCE, 编译时抛弃
CLASS, 编译时保留,运行时不考虑
RUNTIME,编译运行时保留。
B、@Target 用于指定被修饰的Annotation能用于修饰哪些程序元素。
C、@Documented 用于指定该元Annotation修饰的Annotation 类将被javadoc工具提取成文档。
注:定义Documented的注解必须设置Retention的值为RUNTIME。
D、@Inherited:被它修饰的Annotation将具有继承性。
即某个类被@Inherited修饰,则其子类将自动具有该注解。
四、几个Linux命令
1、查看内存映射
sudo cat /proc/iomem
2、开机自动加载驱动
sudo vi /etc/modules 在其中加上驱动名称,重启即可。
3、脚本中,重定向时,0,1,2和">"之间不能有空格。
select * from tb_parking_info p1, tb_parking_info p2 where p1.record_no = p2.record_no and p1.IRecNo != p2.IRecNo;
二、枚举类
1、如何自定义枚举类(见06-01中的第二部分)
2、如何使用enum关键字定义枚举类
enum Session {
// 创建的对象必须放在开头,且使用","隔开
SPRING("Spring", "春天"),
SUMMER("summer", "夏天"),
AUTOUN("autumn", "秋天"),
WINTER("winter", "冬天");
// 其他属性及方法在此定义
}
> 常用方法
Object[] values(); // 返回所有的枚举对象,以数组的形式。
Object valueof(String name); // 根据枚举对象名称,返回枚举对象
> 如何让枚举类实现接口
interface Info {
void show();
}
enum Session implements Info {
// 创建的对象必须放在开头,且使用","隔开
SPRING("Spring", "春天") {
public void show() {
...
}
},
SUMMER("summer", "夏天") {
public void show() {
...
}
},
AUTOUN("autumn", "秋天"),
WINTER("winter", "冬天");
// 其他属性及方法在此定义
...
// 在此处重新方法会显示相同的内容
}
三、注解Annotation
要点:
JDK内置的基本注解类型(3个)
自定义注解类型
对注解进行注解(4个)
利用反射获取注解信息
1、概述
a、Annotation 其实就是代码里的特殊标记,在编译,类加载,运行时被读取,并执行相应的处理。
通过使用Annotation,可以在不改变原有逻辑的情况下,在源文件中嵌入以下补充信息。
b、Annotation 可以像修饰符一样被使用,可用于修饰包、类、构造器、方法、成员变量、参数、局部变量等,
这些信息被保存在Annotation的"name=value"中。
c、Annotation 能被用来为程序元素设置源数据。
2、JDK提供的常用注解
@Override :限定重写父类方法,该注释只能用于方法
在方法名拼写错误是,可以报错。
@Deprecated :用于表示某个程序元素(类,方法等)已过时
@SuppressWarnings :抑制编译器警告,即不显示黄色叹号。
3、如何自定义一个注解(使用较少)
public @interface 注解名 {
}
4、元注解:用于修饰其他注解的注解。
A、@Retention(RetentionPolicy.value) :
value取值如下:
SOURCE, 编译时抛弃
CLASS, 编译时保留,运行时不考虑
RUNTIME,编译运行时保留。
B、@Target 用于指定被修饰的Annotation能用于修饰哪些程序元素。
C、@Documented 用于指定该元Annotation修饰的Annotation 类将被javadoc工具提取成文档。
注:定义Documented的注解必须设置Retention的值为RUNTIME。
D、@Inherited:被它修饰的Annotation将具有继承性。
即某个类被@Inherited修饰,则其子类将自动具有该注解。
四、几个Linux命令
1、查看内存映射
sudo cat /proc/iomem
2、开机自动加载驱动
sudo vi /etc/modules 在其中加上驱动名称,重启即可。
3、脚本中,重定向时,0,1,2和">"之间不能有空格。
相关文章推荐
- java笔记1(策略、代理模式、枚举、反射、注解)
- 《编写高质量代码改善Java程序的151个建议》学习笔记 第6章 枚举和注解
- 改善java程序的151个建议--枚举和注解
- Java基础加强_Eclipse、枚举、反射、注解、泛型、类加载器、动态代理
- Effective Java——枚举和注解
- Java编程思想学习笔记——枚举、注解
- 黑马程序员——java高新(枚举、内省、注解、类加载器)
- 黑马程序员——Java高新技术---枚举、内省、类加载器、注解
- java每日一记
- Java深入(JDK1.5版本新特性、枚举以及注解介绍)
- 黑马程序员:基础加强(可变参数、增强for、枚举、javabBean、BeanUtils、注解、泛型)
- [编写高质量代码:改善java程序的151个建议]建议91 枚举和注解结合使用威力更大
- 随笔-java注解,反射,枚举
- 读书笔记--编写高质量代码 改善java程序的151个建议(六)枚举与注解
- Annotation & Enum :Java中注解和枚举的使用
- java枚举和注解
- 黑马程序员_java_基础加强_静态导入_反射_枚举_注解_内省_泛型
- Java - 枚举与注解
- 【总结】Effective java经验之谈,枚举,注解,方法,通用设计,异常