使用enum关键字后就不能继承其他类了,因为enum会隐式继承Enum类,而java是单继承
枚举类 和普通类一样,可以实现接口
enum 类名 implements 接口1,接口2{}
**个人理解:**枚举类就是一个类,里面的枚举对象就是创建好的对象放在里面
public class test { public static void main(String[] args) { Color color = Color.RED; switch (color){ case RED: color.show(); break; case BLUE: color.show(); break; default: break; } } } public interface Show { public void show(); } public enum Color implements Show{ RED(255,0,0),BLUE(0,0,255),BLACK(0,0,0),YELLOW(255,255,0),GREEN(0,255,0); private int redValue; private int greenValue; private int blueValue; Color(int redValue,int greenValue,int blueValue){ this.redValue = redValue; this.greenValue = greenValue; this.blueValue = blueValue; } @Override public void show(){ System.out.println("red:"+this.redValue+",green:"+this.greenValue+",blue:"+this.blueValue); } }
public class EnumExercise { public static void main(String[] args) { System.out.println("=====遍历枚举======="); Week[] weeks = Week.values(); for (Week week :weeks){ System.out.println(week); } } } enum Week{ Monday("星期一"),Tuesday("星期二"),Wednesday("星期三"),Thursday("星期四"); private String name; private Week(String name) { this.name = name; } @Override public String toString(){ return name; } }
用于限定某个方法,是重写父类方法,该注解只能用于方法
如果写了@override,编译器会检查该方法是否真的重写了父类的方法;相当于提醒编译器校验
如果没写,如果父类有对应方法,一样的构成重写
@Deprecated
@SuppressWarnings
到此这篇关于Java的枚举与注解的文章就介绍到这了,更多相关枚举与注解内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!