当前位置 : 主页 > 编程语言 > java >

Java实现接口的枚举类示例

来源:互联网 收集:自由互联 发布时间:2021-05-13
本文实例讲述了Java实现接口的枚举类。分享给大家供大家参考,具体如下: 一 点睛 枚举类也可以实现一个或多个接口。与普通类实现一个或多个接口完全一样,枚举类实现一个或多个

本文实例讲述了Java实现接口的枚举类。分享给大家供大家参考,具体如下:

一 点睛

枚举类也可以实现一个或多个接口。与普通类实现一个或多个接口完全一样,枚举类实现一个或多个接口时,也需要实现该接口所包含的方法。

如果需要每个枚举值在调用同一个方法时呈现出不同的行为方式,则可以让每个枚举值分别来实现该方法,每个枚举值提供不同的实现方式,从而让不同枚举值调用同一个方法时具有不同的行为方式。

二 实战

1 代码

GenderDesc.java

public interface GenderDesc
{
  void info();
}

Gender.java

public enum Gender implements GenderDesc
{
  // 此处的枚举值必须调用对应构造器来创建
  MALE("男")
  // 花括号部分实际上是一个类体部分,这部分代码的语法匿名内部类语法大致一样。
  {
   public void info()
   {
     System.out.println("这个枚举值代表男性");
   }
  },
  FEMALE("女")
  {
   public void info()
   {
     System.out.println("这个枚举值代表女性");
   }
  };
  private final String name;
  // 枚举类的构造器只能使用private修饰
  private Gender(String name)
  {
   this.name = name;
  }
  public String getName()
  {
   return this.name;
  }
  // 增加下面的info()方法,实现GenderDesc接口必须实现的方法
  public void info()
  {
   System.out.println(
     "这是一个用于用于定义性别的枚举类");
  }
  public static void main(String[] args)
  {
   Gender f = Gender.valueOf("FEMALE");
   Gender m = Gender.valueOf("MALE");
   f.info();
   m.info();
  }
}

 

2 运行

这个枚举值代表女性
这个枚举值代表男性

更多java相关内容感兴趣的读者可查看本站专题:《Java面向对象程序设计入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。

网友评论