使用jdk5.0新增的enum定义枚举类-创新互联

1、定义步骤:
enum EnumTest {

    //1、提供当前枚举类的对象
    //格式:对象名1(属性1, 属性2, ...),
    //      对象名2(属性1, 属性2, ...),
    //      对象名3(属性1, 属性2, ...);

    STUDENT("学生", 0),
    TEACHER("老师", 8000),
    PRESIDENT("校长", 10000);

    //2、声明EnumTest对象属性,注意用 private final 进行修饰
    private final String name;
    private final double salary;

    //3、私有化构造器,并对属性赋值
    private EnumTest(String name, double salary) {
        this.name = name;
        this.salary = salary;
    }

    //对toString()方法重写
//    @Override
//    public String toString() {
//        return "EnumTest{" +
//                "name='" + name + '\'' +
//                ", salary=" + salary +
//                '}';
//    }

}

public class EnumTestMain {
    public static void main(String[] args) {

        EnumTest student = EnumTest.STUDENT;
        System.out.println(student);

        System.out.println("----------------------------");

        //values()方法:返回所有的枚举类对象构成的数组
        EnumTest[] values = EnumTest.values();
        for (EnumTest value : values) {
            System.out.println(value);
        }

    }
}

测试结果(不进行 toString() 方法重写):

创新互联长期为1000多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为平昌企业提供专业的成都网站设计、成都网站制作、外贸网站建设平昌网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。

测试结果(对 toString() 方法重写):

2、枚举类对象分别实现接口
interface Explain {
    void vocationExplain();
}


enum EnumTest implements Explain{

    STUDENT("学生", 0){
        @Override
        public void vocationExplain() {
            System.out.println("学生要努力学习");
        }
    },
    TEACHER("老师", 8000) {
        @Override
        public void vocationExplain() {
            System.out.println("老师要教书育人");
        }
    },
    PRESIDENT("校长", 10000) {
        @Override
        public void vocationExplain() {
            System.out.println("校长要管理学校事务");
        }
    };

    private final String name;
    private final double salary;

    private EnumTest(String name, double salary) {
        this.name = name;
        this.salary = salary;
    }

}


public class EnumTestMain {
    public static void main(String[] args) {

        EnumTest student = EnumTest.STUDENT;
        EnumTest teacher = EnumTest.TEACHER;
        EnumTest president = EnumTest.PRESIDENT;

        student.vocationExplain();
        teacher.vocationExplain();
        president.vocationExplain();

    }
}

测试结果

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧

名称栏目:使用jdk5.0新增的enum定义枚举类-创新互联
转载源于:https://www.cdcxhl.com/article46/ceoieg.html

成都网站建设公司_创新互联,为您提供电子商务网站设计网站排名建站公司外贸网站建设网站设计公司

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

小程序开发