枚举(Enumeration)、注解@
枚举有个隐式继承extends java.lang.Eunm,不能再继承了。
枚举:把具体的对象一个一个列举出来的类
枚举是一组常量的集合,它属于一种特殊的类,里面只包含一组有限的特定的对象
枚举类型的构造方法,只能用private私有
可以有抽象方法,但要使用匿名内部类
枚举对象值通常为只读
-
将构造器私有化,防止直接new
-
去掉setXxx方法,防止属性被修改
-
在类内部,直接创建固定对象,用final + static修饰
-
通过enum来实现枚举类:
-
enum ---> 代替class
-
常量名1(实参列表),常量名2(实参列表);
-
枚举对象必须放在枚举类的行首
public enum Week {
MON,
TUE,
WED,
THU,
FRI,
SAT,
SUN;
}
values(): 获取枚举中定义的所有常量对象
HttpStatus[] values = HttpStatus.values();
for (HttpStatus value : values) {
System.out.println(value);
}
枚举方法
values 获取所有的枚举对象,返回一个数组
枚举项之间用==比较
package com.xxx.test2;
public enum Color2{
BLUE{
@Override
public String getColor() {
return "蓝色";
}
},RED{
@Override
public String getColor() {
return null;
}
},PINK {
@Override
public String getColor() {
return null;
}
};
private String name;
//可以有抽象方法,但要使用匿名内部类
public abstract String getColor();
}
注解
注解是修饰Java代码中的类、方法、属性、参数的一种特殊“注释”;
但是它又和注释不尽相同,注释(除文档型注释)会被编译器忽略,而注解会被编译到.class文件中。
@Override 检查该方法是否是重写方法
@Deprecated 标记过时方法
@SuppressWarnings 指示编译器去忽略注解中声明的警告
Lambda表达式
-
也称闭包
-
操作符->
-
表达式 ()-> {}
构造代码块
new 对象的时候就会执行
构造代码块优先于构造方法执行

浙公网安备 33010602011771号