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());
}
}

java基础 java中枚举的应用 抽象方法问题的更多相关文章

  1. Java基础教程:枚举类型

    Java基础教程:枚举类型 枚举类型 枚举是将一具有类似特性的值归纳在一起的方法.比如,我们可以将周一到周日设计为一个枚举类型.彩虹的七种颜色设计为一个枚举类型. 常量实现枚举 我们通过定义常量的方式 ...

  2. Java基础(中)

    面向对象基础 面向对象和面向过程的区别 两者的主要区别在于解决问题的方式不同: 面向过程把解决问题的过程拆成一个个方法,通过一个个方法的执行解决问题. 面向对象会先抽象出对象,然后用对象执行方法的方式 ...

  3. java基础---->java中正则表达式二

    跟正则表达式相关的类有:Pattern.Matcher和String.今天我们就开始Java中正则表达式的学习. Pattern和Matcher的理解 一.正则表达式的使用方法 一般推荐使用的方式如下 ...

  4. Java基础学习中一些词语和语句的使用

    在Java基础学习中,我们刚接触Java会遇到一些词和语句的使用不清的情况,不能很清楚的理解它的运行效果会是怎么样的,如:break,continue在程序中运行效果及跳转位置, 1.先来看看brea ...

  5. Java基础-Java中的堆内存和离堆内存机制

    Java基础-Java中的堆内存和离堆内存机制 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.

  6. Java基础-Java中的内存分配与回收机制

    Java基础-Java中的内存分配与回收机制 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一. 二.

  7. Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock)

    Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在学习Java的之前,你可能已经听说过读 ...

  8. Java基础-Java中的并法库之线程池技术

    Java基础-Java中的并法库之线程池技术 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是线程池技术 二.

  9. Java基础-Java中23种设计模式之常用的设计模式

    Java基础-Java中23种设计模式之常用的设计模式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.   一.设计模式分类 设计模式是针对特定场景给出的专家级的解决方案.总的来说设 ...

  10. Java基础-JAVA中常见的数据结构介绍

    Java基础-JAVA中常见的数据结构介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是数据结构 答:数据结构是指数据存储的组织方式.大致上分为线性表.栈(Stack) ...

随机推荐

  1. Factorization Machines with libFM 论文阅读

    Factorization Machines with libFM https://pan.baidu.com/s/1aAyhHGNSrZQFDfoz8VsHIQ libFM网站:http://www ...

  2. Java基础02-变量

    1.为什么要使用变量? 变量就是用来记忆数据的,它是一个记忆系统 2.什么是变量? 变量就是一个容器,用来装数据的,变量是放在内存里的. 比如:内存是酒店,变量名就是房间名,变量值就是住进房间的人 3 ...

  3. 性能测试工具LoadRunner17-LR之Controller windows系统资源性能常用计数器

    1.System %Total Processor Time 该计数值用于体现服务器整体的处理器利用率,对多处理器而言,该计数值体现的是所有CPU的平均利用率.如果该值的数值持续超过90%,则可以说明 ...

  4. [转]关于Jquery的DataTables里TableTools的应用

    本文转自:http://147068307.iteye.com/blog/1700516 最近在产品中使用了TableTools这个工具,主要用来实现导出和复制功能. 但是在实际的运用中出现了以下相关 ...

  5. w3schools juerymobile

    http://www.w3schools.com/jquerymobile/jquerymobile_examples.asp <!DOCTYPE html> <html> & ...

  6. 利用Intent.ACTION_SEND进行分享

    安卓系统本身可以很简便的实现分享功能,因为我们只需向startActivity传递一个ACTION_SEND的Intent,系统就为我们弹出一个应用程序列表.其实在系统的文件管理器中,这应该是我们常用 ...

  7. (转)在 VMware 中安装 HMC

    在 VMware 中安装 HMC 原文:http://blog.csdn.net/ccie38499/article/details/14123493 http://www.54it.top/arch ...

  8. Linux下的NFS快速配置教程与安全策略

    [51CTO专稿]在Linux下实现文件共享有多种方式,NFS就是其中之一.网络文件系统(NFS)协议是由Sun MicroSystem在20世纪80年代为了提供对共享文件的远程访问而设计和实现的.该 ...

  9. Linux小知识(1): bash中执行数据库的相关操作

    工作中经常会遇到命令行操作数据库或登陆至其他服务器等情况,往往需要通过命令行进入相关的数据库或登陆至相关的服务器,再执行指令操作,因此有没有方法,在命令行或bash脚本中模拟进入数据库或登陆服务器操作 ...

  10. Linux Bird

    o / : 2GB o /boot: 200MB o /usr : 4GB o /var : 2GB o /tmp : 1GB o swap : 1GB o /home: 5GB,并且使用 LVM 模 ...