zoukankan      html  css  js  c++  java
  • 枚举类

    枚举作用:

      一些方法在运行时,它需要的数据不能是任意的,而必须是一定范围内的值,可以直接使用枚举予以解决。

    枚举类的定义格式:

      enum 类名{
            //枚举值
        }

    枚举类详解:

      1. 枚举类也是一个特殊的类。
        2. 枚举值默认的修饰符是public static final。
        3. 枚举值就是是枚举值所属的类的类型, 然后枚举值是指向了本类的对象。
        4. 枚举类的构造方法默认的修饰符是private的。
        5. 枚举类可以定义自己的成员变量与成员函数。
        6. 枚举类可以自定义构造函数,但是构造函数的修饰符必须是private。
        7. 枚举类可以存在抽象的方法,但是枚举值必须要实现抽象的方法。
        8. 枚举值必须要位于枚举类的第一个语句。

    代码如下:

     1 enum Sex{
     2     man("男") { //实现抽象方法
     3         @Override
     4         public void run() {
     5             System.out.println("男人跑");
     6         }
     7     },woman("女") {
     8         @Override
     9         public void run() {
    10             System.out.println("男人追");
    11         }
    12     };
    13     
    14     String value; //自定义属性
    15     public void getValue(){ //自定义方法
    16         System.out.println(this.value);
    17     }
    18     private Sex(String value) { //自定义构造方法 但是必须是private
    19         this.value = value;
    20     }
    21     
    22     public abstract void run();
    23 }
    24 
    25 public class DemoEnum {
    26     
    27     public static void main(String[] args) {
    28         Sex sex = Sex.man;
    29         sex.getValue();
    30         sex.run();
    31     }
    32 }
    View Code

    枚举类的使用

    一般配合switc来使用:swit可以接收的参数类型为:byte char short int String枚举类型

    代码示例如下:

     1 enum Season{
     2     spring,
     3     summer,
     4     autumn,
     5     winter
     6 }
     7 
     8 public class DemoEnum {
     9     public static void main(String[] args) {
    10         Season season = Season.spring;
    11         switch (season) {
    12         case spring:
    13             System.out.println("春天……");
    14             break;
    15         case summer:
    16             System.out.println("春天……");
    17             break;
    18         case autumn:
    19             System.out.println("春天……");
    20             break;
    21         case winter:
    22             System.out.println("春天……");
    23             break;
    24         default:
    25             break;
    26         }
    27     }
    28 }
    View Code

     注意:
         case语句后面跟的枚举值,只需要单写枚举值即可,不需要再声明该 枚举值是属于哪个枚举类的。

  • 相关阅读:
    Docker之设置加速器
    Nginx之美多商城前台部署
    Nginx之负载均衡
    Nginx之反向代理
    美多商城后台MIS系统部署之Nginx配置
    Nginx之server和location配置使用
    题解 P4721 【【模板】分治 FFT】
    题解 P3338 【[ZJOI2014]力】
    题解 CHSEQ22 【Chef and Favourite Sequence】
    题解 CF813F 【Bipartite Checking】
  • 原文地址:https://www.cnblogs.com/nicker/p/6242998.html
Copyright © 2011-2022 走看看