zoukankan      html  css  js  c++  java
  • 【Java编程进阶-1】enum枚举的使用

    枚举主要用于枚举常量,下面举个简单的应用。
    比如一个公司有如下几个部门:
    • 研发部:
    • 销售部:
    • 财务部:
    (其他部门暂时不列举)
    部门的某些信息相对固定,此时可以考虑使用枚举来说明;

    枚举类 Depts.java


    package myEnum;
    public enum Depts {
        
        FINACEDEPT("财务部","负责公司财务"),
        DEVELOPDEPT("研发部","负责软件研发工作"),
        SALEDEPT("销售部","负责公司的销售工作");
        
        private final String name_cn;         //中文名
        private final String description;     //描述
        Depts(String n,String desc){
            this.name_cn = n;
            this.description = desc;
        }
        
        public String getName_cn() {
            return name_cn;
        }
        public String getDescription() {
            return description;
        }  
    }

    测试类:EnumTest.java


    package myEnum;
    public class EnumTest {
        public static void main(String args[]) {
            for (Depts dept : Depts.values()) {
                System.out.println(dept + "-" + dept.getName_cn() + "-"
                        + dept.getDescription());
            }
            System.out.println(Depts.DEVELOPDEPT.getDescription());
            System.out.println(Depts.DEVELOPDEPT);
        }
    }

    测试结果:



    我们还可以为枚举参加抽象方法,然后让每个枚举值实现这个抽象方法。

    package myEnum;
    public enum Depts {
        
        FINACEDEPT("财务部""负责公司财务") {
            void printInfo() {
                System.out.println("最近公司财务信息不错");
            }
        },
        DEVELOPDEPT("研发部","负责软件研发工作") {
            void printInfo() {
                System.out.println("公司使用Java作为研发工具");
            }
        },
        SALEDEPT("销售部","负责公司的销售工作") {
            void printInfo() {
                System.out.println("公司销售目标:10000台/年");
            }
        };
        
        private final String name_cn;         //中文名
        private final String description;     //描述
        Depts(String n,String desc){
            this.name_cn = n;
            this.description = desc;
        }
        
        public String getName_cn() {
            return name_cn;
        }
        public String getDescription() {
            return description;
        }
        
        abstract void printInfo();
    }

    测试类:

    package myEnum;
    public class EnumTest {
        public static void main(String args[]) {
            for (Depts dept : Depts.values()) {
                System.out.print(dept);
                dept.printInfo();
            }
            Depts.DEVELOPDEPT.printInfo();
        }
    }

    测试结果:







  • 相关阅读:
    JavaWeb核心编程之(四.1)JSP
    一起来说 Vim 语
    你应该知道的基础 Git 命令
    Git 系列(五):三个 Git 图形化工具
    Git 系列(四):在 Git 中进行版本回退
    Git 系列(三):建立你的第一个 Git 仓库
    Git 系列(二):初步了解 Git
    Git 系列(一):什么是 Git
    JavaWeb核心编程之(三.6)HttpServlet
    多线程:子线程执行完成后通知主线程
  • 原文地址:https://www.cnblogs.com/ssslinppp/p/4713967.html
Copyright © 2011-2022 走看看