枚举类实现接口
java
it书童
2020-11-29 17:15:58
0赞
0踩
1008阅读
0评论
枚举类也可以实现一个或多个接口。与普通类实现一个或多个接口完全一样,枚举类实现一个或多个接口时,也需要实现该接口所包含的方法
定义一个接口
public interface GenderDesc {
void info();
}
枚举类实现此接口方法
public enum Gender implements GenderDesc {
MALE("男"), FEMALE("女");
private final String name;
Gender(String name) {
this.name = name;
}
public String getName() {
return name;
}
@Override
public void info() {
System.out.println("这是一个用于定义性别的枚举类");
}
}
这种方式,枚举类的各个对象值都拥有同样的接口实现方法,如:
public static void main(String[] args) {
Gender g1 = Enum.valueOf(Gender.class, "FEMALE");
g1.info();
Gender g2 = Enum.valueOf(Gender.class, "MALE");
g2.info();
}
如果我们要让不同枚举值有不同的接口实现方法体,需要进行以下改造:
public enum Gender implements GenderDesc {
MALE("男") {
@Override
public void info() {
System.out.println("男性对象实现的接口");
}
},
FEMALE("女") {
@Override
public void info() {
System.out.println("女性对象实现的接口");
}
};
private final String name;
Gender(String name) {
this.name = name;
}
public String getName() {
return name;
}
@Override
public void info() {
System.out.println("枚举类实现的接口");
}
}
再次调用,结果如下:
- 上一篇: java 枚举类进阶
- 下一篇: java注解入门

关于我
一个文科出身的程序员,追求做个有趣的人,传播有价值的知识,微信公众号主要分享读书思考心得,不会有代码类文章,非程序员的同学请放心订阅
转载须注明出处:https://www.itshutong.com/articles/914
精品付费
这一次,真正掌握composer
2602
0
个人开发者通过payjs接入微信支付
4815
0
相关推荐
maven 的安装与配置
700
0
几种常见的数据结构概述
676
0
Java 属性集
681
0
Java 动态代理实现方法增强详解
738
0
spring 实例化 bean 的三种方式
649
0
Zuul 网关入门介绍
626
0
maven 生命周期与概念模型
1003
0
使用Jpql实现在JPA中的复杂查询
1469
0
java反射入门
1188
0
异常机制的作用
565
0