java基础 java中枚举的应用 抽象方法问题

2018-06-18 03:22:29来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

package com.swift.meiju;

import org.junit.Test;

public class Demo{
     @Test
     public void test() {
        System.out.println(Meiju.C.getScore());
     }
}

上面测试,用了Junit

下边枚举

package com.swift.meiju;

import org.junit.Test;

public enum Meiju {
    //考试分数A B C D E 五个等级
    A("90~100"),B("80~89"),C("70~79"),D("60~69"),E("0~59");
    private String score;
    private Meiju(String score) {
        this.score=score;
    }
    public String getScore() {
        return this.score;
    }
}

 

枚举是什么?

相当于

package com.swift.meiju;

public class Enumer {
    
    private Enumer() {}
    public static final Enumer A=new Enumer();
    public static final Enumer B=new Enumer();
    public static final Enumer C=new Enumer();
    public static final Enumer D=new Enumer();
    public static final Enumer E=new Enumer();

}

有点像单例模式,只造出一个对象供外界使用;这个枚举一下造出好多个供使用,造出的对象不能改变

枚举出来的ABCDE都是可以用类名.直接调用的对象,对象可以赋值,和调用其成员方法


 

枚举中的对象 都是 public static final  确可以有abstract的方法 ,应该算是抽象类,可又实例化了,逻辑上都是到处都是冲突的,真是骚包的家伙

package com.swift.meiju;

import org.junit.Test;

public enum Meiju {
    //考试分数A B C D E 五个等级
    A("90~100") {
        @Override
        public String getTxt() {
            return "优";
        }
    },B("80~89") {
        @Override
        public String getTxt() {
            return "良";
        }
    },C("70~79") {
        @Override
        public String getTxt() {
            return "中";
        }
    },D("60~69") {
        @Override
        public String getTxt() {
            return "及格";
        }
    },E("0~59") {
        @Override
        public String getTxt() {
            return "差";
        }
    };
    private String score;
    private Meiju(String score) {
        this.score=score;
    }
    public String getScore() {
        return this.score;
    }
    public abstract String getTxt();
}

Junit 测试

package com.swift.meiju;

import org.junit.Test;

public class Demo{
     @Test
     public void test() {
        System.out.println(Meiju.C.getTxt());
     }
}

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:JAVA新手小试牛刀之遍历递归树求递推数列通项

下一篇:Spring基础篇——自动化装配bean