枚举的其他应用:实现接口

枚举可以跟其他类一样实现接口,但是要求实现接口的时候,要求枚举中的每个对象都必须单独覆写好接口中的抽象方法

package 类集;

interface Print
{
    public String getColor();
}

enum Color implements Print{
    RED{
        public String getColor(){  //每个对象都要覆写好接口中的方法。
            return "红色" ;
        }
    },GREEN{
        public String getColor(){  //每个对象都要覆写接口中的方法
            return "绿色" ;
        }
    },BLUE{
        public String getColor(){
            return "蓝色" ;
        }
    } ;
    public abstract String getColor() ;
}
public class test1{
    public static void main(String args[]){
        for(Color c:Color.values()){
            System.out.print(c.getColor() + "、") ;
        }
    }
}

输出结果:

红色、绿色、蓝色、

还可在枚举中定义抽象方法,但是要求枚举中每个对象都分别实现此抽象方法。

package 类集;

enum Color{
    RED{
        public String getColor(){  //要求每个对象都分别实现此抽象方法。
            return "红色" ;
        }
    },GREEN{
        public String getColor(){
            return "绿色" ;
        }
    },BLUE{
        public String getColor(){
            return "蓝色" ;
        }
    } ;
    public abstract String getColor() ;  //抽象方法。
}
public class test1{
    public static void main(String args[]){
        for(Color c:Color.values()){
            System.out.println(c.getColor() + "、") ;
        }
    }
}
时间: 2024-12-25 04:38:29

枚举的其他应用:实现接口的相关文章

Java核心 --- 枚举

Java核心 --- 枚举 枚举把显示的变量与逻辑的数字绑定在一起在编译的时候,就会发现数据不合法也起到了使程序更加易读,规范代码的作用 一.用普通类的方式实现枚举 新建一个终态类Season,把构造方法设为私有,因为枚举值不能随意增加因为不能new出这个类的对象,所以需要定义成员变量,把new写在类的内部这样,就可以在类的外部通过访问类的静态成员变量的方式访问到枚举值通过这样的方式,只能在类的外部使用在枚举类的内部定义的枚举值 类Season里面是可以有方法的,我们设置地球又公转了四分之一方法

【Java】变量类接口_学习笔记

变量.类和接口 1.变量的类型 实例变量(不以static修饰) 成员变量 类变量(以static修饰) 所有变量 形参(方法签名中定义的变量) 局部变量        方法局部变量(在方法内定义) 代码块局部变量(在代码块内定义) 2.单例类(Singleton) 单例类:一个类只能创建一个对象,称为单例类. 用法: A.使用private修饰构造器. B.使用public static 类名返回类型 getInstance(),方法里创建对象并返回对象. 3.final修饰符 A.final

枚举类专题(有源代码)

简介:JDK1.5之前需要自定义枚举类,JDK1.5新增的enum关键字用于定义枚举类,若枚举只有一个成员,则可以作为一种单例模式的实现方式 枚举类的属性:枚举类对象的属性不应允许被改动,所以应该使用private final修饰 ·枚举类的使用private final修饰的属性应该在构造器中为其赋值 ·若枚举类显式的定义了带参数的构造器,则在列出枚举值时也必须对应的传入参数 Enum枚举类: ·必须在枚举类的第一行声明枚举类对象. ·枚举类和普通类的区别: 1.使用enum定义的枚举类默认继

比你想象中还要强大的枚举类型---案例篇

前几天写了一篇介绍枚举功能强大的文章.有几个朋友给我指正说,没有案例单纯描述不够直观.确实啊,在这里我就在写一个案例篇,对上次的文章做补充说明. 此案例是一个游戏服务器的消息识别器的简化.做过游戏开发都知道,客户端和服务器之间的交互需要定义很多的消息类型,而且这个消息类型是需要不断扩展的.消息识别器就是根据客户端发送过来的消息编码封装成消息实体对象,以供业务逻辑层处理.这里就用这个简化后的消息识别器展示一下枚举的一个应用.(此处主要用作枚举的一个应用实例演示,由于代码做了简化处理,设计上难免会有

java枚举使用

1.开发中如何使用枚举,一般在开发中使用消息提示.枚举可以继承,实现接口等.public enum Result { SUCCESS(1,"201 ok") { @Override void doCallBack(String msg) { System.out.println("201 success process!!!" + "\t" + msg); } }, ERROR(2,"501 server error") {

C#的枚举数(Enumerator)和可枚举类型(Enumerable)

数组可以被foreach语句遍历数组中的元素,原因是数组可以按需提供一个叫做枚举数(enumerator)的对象.枚举数可以依次返回请求的数组的元素. 对于有枚举数的类型而言,必须有一个方法来获取它们.在.NET中获取一个对象枚举数的标准用法是调用对象的GetEnumerator方法.实现GetEnumerator方法的类型叫做可枚举类型(enumerable),数组就是可枚举类型. 要注意枚举数(enumerator)和可枚举类型(enumerable)的区别和联系. 枚举数是可以依次返回集合

枚举器对象与可枚举类型

1.IEnumerator与IEnumerable接口 IEnumerator接口:实现此接口的为枚举器类型,此接口包含3个方法Current.MoveNext.Reset. IEnumerable接口:实现此接口只需实现一个方法GetEnumerator得到一个枚举器. class ColorEnumerator : IEnumerator //实现枚举器接口:Current,MoveNext,Reset共3种方法 { string[] _colors; int _position = -1;

第三章 EnumUtil根据值获取枚举对象

项目中使用枚举类的好处这里不再赘述,在使用枚举值时,通常需要根据值来获取枚举对象,下面介绍两种实现方案: 1.在枚举类中定义方法实现 首先给出如下性别枚举类: public enum SexEnum { MAN("M", "男"), WOMAN("F", "女"); private String code; private String desc; SexEnum(String code, String desc) { thi

JAVA数据结构-----枚举

枚举(Enumeration)接口虽然它本身不属于数据结构,但它在其他数据结构的范畴里应用很广. 枚举(The Enumeration)接口定义了一种从数据结构中取回连续元素的方式. 例如,枚举定义了一个叫nextElement 的方法,该方法用来得到一个包含多元素的数据结构的下一个元素. 枚举定义了一个hasMoreElements的方法,该方法用来判断是否还有更多的元素. import java.util.Vector; import java.util.Enumeration; publi

C#高级编程四十七天----集合接口和类型

集合接口和类型 前面介绍了数组和Array类实现的接口.数组的大小是固定的.如果元素个数是动态的,就应私用集合类. List<T>是与数组相当的集合类.还有其他类型的集合:队列,栈,链表和字典. 大多数集合类都可在System.Collections和System.Collections.Generic名称空间中找到.泛型集合类位于System.Collections.Generic名称空间中;专用于特定类型的集合类位于System.Collections.Specialized名称空间中.线