枚举类的应用

黑皮书说到枚举类自动继承的Java.lang.Enum,所以枚举类不能再继承其他的类的。

在这里插入图片描述

枚举类可以来优化大量的if else
将if else 里面的值写成枚举类,通过.values遍历这个数组。

上面那个例子 我要判断传进来的对象到底是哪个季节,可以用枚举类。

原来判断需要写多个if else 来确定到底是夏天还是冬天,简化了代码开发。更加的优雅
在这里插入图片描述
在经常开发中,如果想要有insert或者update 可以用枚举类来表示。

项目中用到枚举类来实现路由跳转。
在这里插入图片描述

public enum UIConstant {
    //用户页面显示
    Doctor(LoadType.EAGER) {
        @Override
        public String toString() {
            return "/com/NJITZX/doctor/view/doctor.fxml";
        }
    },
    Doctor_ADD(LoadType.LAZY) {
        @Override
        public String toString() {
            return "/com/NJITZX/doctor/view/addDoctor.fxml";
        }
    },
    Doctor_PASS(LoadType.EAGER) {
        @Override
        public String toString() {
            return "/com/NJITZX/doctor/view/pass.fxml";
        }
    },
    Patient_LIST(LoadType.LAZY) {
        @Override
        public String toString() {
            return "/com/NJITZX/patient/view/patinet.fxml";
        }
    },
    Doctor_UPDATE(LoadType.LAZY) {
        @Override
        public String toString() {
            return "/com/NJITZX/doctor/view/updateDoctor.fxml";
        }
    }, DrugType_ADD(LoadType.LAZY) {
        @Override
        public String toString() {
            return "/com/NJITZX/drug/view/drugtype.fxml";
        }
    }, Echarts_Doctor(LoadType.LAZY) {
        @Override
        public String toString() {
            return "/com/NJITZX/doctor/view/showdata.fxml";
        }
    }, Pass_Change(LoadType.LAZY) {
        @Override
        public String toString() {
            return "/com/NJITZX/doctor/view/chagePass.fxml";
        }
    }, Drug_ADD(LoadType.LAZY) {
        @Override
        public String toString() {
            return "/com/NJITZX/drug/view/AddDrug.fxml";
        }
    }, Patient_Register(LoadType.LAZY) {
        @Override
        public String toString() {
            return "/com/NJITZX/patient/view/register.fxml";
        }
    }, Chat_Init(LoadType.LAZY) {
        @Override
        public String toString() {
            //com/NJITZX/chat/view/chat.fxml
            return "/com/NJITZX/chat/view/chat.fxml";
        }
    }, Patine_Diagnose(LoadType.LAZY) {
        @Override
        public String toString() {
            return "/com/NJITZX/patient/view/diagnose.fxml";
        }
    }, Work(LoadType.LAZY) {
        @Override
        public String toString() {
            return "/com/NJITZX/patient/view/work.fxml";
        }
    }, Pay(LoadType.LAZY) {
        @Override
        public String toString() {
            return "/com/NJITZX/patient/view/pay.fxml";
        }
    }, Drug(LoadType.LAZY) {
        @Override
        public String toString() {
            return "/com/NJITZX/drug/view/drug.fxml";
        }
    },ShowDrugData(LoadType.LAZY){
        @Override
        public String toString() {
            return "/com/NJITZX/drug/view/showdrug.fxml";
        }
    };

    //更新用户页面

    //加入对象  loadType
    private LoadType loadType;

    UIConstant(LoadType loadType) {
        this.loadType = loadType;
    }

    public LoadType getLoadType() {
        return loadType;
    }

}

将所有的页面URL通过枚举类存储起来,在调用枚举类来加载即可,大大简化了开发。

相关推荐

  1. 使用场景

    2024-07-19 07:48:01       32 阅读
  2. Kotlin

    2024-07-19 07:48:01       54 阅读
  3. 练习

    2024-07-19 07:48:01       31 阅读
  4. 简单使用

    2024-07-19 07:48:01       56 阅读
  5. 06 Rust

    2024-07-19 07:48:01       53 阅读
  6. C++

    2024-07-19 07:48:01       26 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-19 07:48:01       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-19 07:48:01       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-19 07:48:01       58 阅读
  4. Python语言-面向对象

    2024-07-19 07:48:01       69 阅读

热门阅读

  1. vue项目使用iview☞Modal后页面不能滚动的诡异问题

    2024-07-19 07:48:01       21 阅读
  2. STM32 | 看门狗+RTC源码解析

    2024-07-19 07:48:01       21 阅读
  3. 富文本中提取信息并去除其中的HTML或XML标签

    2024-07-19 07:48:01       22 阅读
  4. 2024前端面试真题【手写篇】

    2024-07-19 07:48:01       18 阅读
  5. 聊聊最近在看的一本书-《从极简到极致》

    2024-07-19 07:48:01       20 阅读
  6. Python数据获取(网页视频、音频版)

    2024-07-19 07:48:01       22 阅读
  7. Log4j2原理及应用详解(九)

    2024-07-19 07:48:01       23 阅读
  8. 关于Kafka的17个问题

    2024-07-19 07:48:01       19 阅读
  9. Leetcode 392. 判断子序列

    2024-07-19 07:48:01       20 阅读