亲宝软件园·资讯

展开

Java枚举与注解 Java枚举与注解的创建步骤

DTFT_W 人气:0
想了解Java枚举与注解的创建步骤的相关内容吗,DTFT_W在本文为您仔细讲解Java枚举与注解的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Java枚举与注解,Java枚举,Java注解,下面大家一起来学习吧。

枚举

自定义枚举类

创建方法

  1. 将构造器私有化,防止直接new
  2. 去掉setXXX方法,防止属性直接被修改
  3. 在类的内部,直接创建固定的对象
  4. 优化:在创建对象时添加final修饰,类就不会被加载

注意事项

关键字Enum枚举类

创建步骤

  1. 使用关键字enum替代class
  2. public static final Season SPRING = new Season("春天","温暖");直接使用SPRING("春天","温暖"):常量名(实参列表)
  3. 如果使用无参构造器创建枚举对象,则实参列表和小括号都可以省略
  4. 如果有多个常量(对象),使用,间隔,最后一个用分号;
  5. 如果使用enum来实现枚举类,要求将定义的常量对象,必须写在类的行首

image-20210611130036924

注意事项

使用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);
    }
}

Enum成员方法

例:创建一个枚举类并打印其中的常量对象

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

用于限定某个方法,是重写父类方法,该注解只能用于方法

如果写了@override,编译器会检查该方法是否真的重写了父类的方法;相当于提醒编译器校验

如果没写,如果父类有对应方法,一样的构成重写

image-20210611231906304

@Deprecated

@SuppressWarnings

image-20210611232547481

元注解(了解)

image-20210611234142958

总结

到此这篇关于Java的枚举与注解的文章就介绍到这了,更多相关枚举与注解内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

加载全部内容

相关教程
猜你喜欢
用户评论