Java枚举用法详解:switch、自定义方法与接口实现
需积分: 50 47 浏览量
更新于2024-09-12
收藏 49KB DOC 举报
本文主要介绍了Java中的枚举(enum)特性及其多种用法,包括创建枚举、在switch语句中的应用、向枚举中添加方法、覆盖枚举方法以及实现接口。
在JDK1.5之后,枚举类型的引入为Java开发者提供了更方便的方式来定义和管理一组相关的常量。例如,创建一个`Color`枚举:
```java
public enum Color {
RED, GREEN, BLANK, YELLOW
}
```
枚举在switch语句中的使用能提高代码的可读性,如`TrafficLight`类中`change()`方法的例子:
```java
enum Signal { GREEN, YELLOW, RED }
public class TrafficLight {
Signal color = Signal.RED;
public void change() {
switch (color) {
case RED:
color = Signal.GREEN;
break;
case YELLOW:
color = Signal.RED;
break;
case GREEN:
color = Signal.YELLOW;
break;
}
}
}
```
在枚举中添加新方法是可能的,只要在所有枚举实例后加上分号,并确保先定义了枚举实例。例如,我们可以为`Color`枚举添加`getName()`方法:
```java
public enum Color {
RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4);
private String name;
private int index;
// 构造方法、普通方法和get set方法
}
```
覆盖枚举的默认方法,如重写`toString()`:
```java
@Override
public String toString() {
return this.index + "_" + this.name;
}
```
枚举可以实现接口,这在Java中是单继承的环境中非常有用。以下`Behavior`接口及两个实现该接口的枚举`Coffee`和`Dessert`:
```java
public interface Behaviour {
void print();
String getInfo();
}
public enum Color implements Behaviour {
// 枚举实现接口方法
}
public interface Food {
enum Coffee implements Food {
BLACK_COFFEE, DECAF_COFFEE, LATTE, CAPPUCCINO
}
enum Dessert implements Food {
FRUIT, CAKE, GELATO
}
}
```
枚举在Java中提供了一种安全、灵活且可扩展的方式来处理一组固定的值,它不仅限于简单的常量,还可以包含方法、实现接口,甚至组织成嵌套结构,极大地丰富了编程的灵活性。
2020-08-18 上传
2020-08-26 上传
2013-12-30 上传
2021-02-19 上传
点击了解资源详情
2023-05-29 上传
2023-08-24 上传
美人鱼不会劈腿
- 粉丝: 0
- 资源: 12
最新资源
- 探索数据转换实验平台在设备装置中的应用
- 使用git-log-to-tikz.py将Git日志转换为TIKZ图形
- 小栗子源码2.9.3版本发布
- 使用Tinder-Hack-Client实现Tinder API交互
- Android Studio新模板:个性化Material Design导航抽屉
- React API分页模块:数据获取与页面管理
- C语言实现顺序表的动态分配方法
- 光催化分解水产氢固溶体催化剂制备技术揭秘
- VS2013环境下tinyxml库的32位与64位编译指南
- 网易云歌词情感分析系统实现与架构
- React应用展示GitHub用户详细信息及项目分析
- LayUI2.1.6帮助文档API功能详解
- 全栈开发实现的chatgpt应用可打包小程序/H5/App
- C++实现顺序表的动态内存分配技术
- Java制作水果格斗游戏:策略与随机性的结合
- 基于若依框架的后台管理系统开发实例解析