【Java】枚举
JAVA 枚举
2023-06-13 09:14:00 时间
If you fall in love with a flower on a planet. Then, as long as you look up at the starry sky at night, you will feel that the stars are like flowers in full bloom.
枚举
类比单例模式,是一个特殊的类,可以实现接口。但不能继承,不能用new实例化,内部提供有限数量的实例:
package Note.enumDemo;
interface Poem {
void poem();
}
// 枚举类型可以实现接口,如果覆写的方法直接跟在内部实例后面那每个实例都可以表现出不同的行为,
// 也可以定义在下面,让多个实例公用一个方法
public enum Season implements Poem{
// 定义实例,必须放在最初,是public static final的
SPRING("春天") {
@Override
public void poem() {
System.out.println("春眠不觉晓");
}
},
SUMMER("夏天") {
@Override
public void poem() {
System.out.println("连雨不知春去,一晴方觉夏深");
}
},
AUTUMN("秋天") {
@Override
public void poem() {
System.out.println("自古逢秋悲寂寥");
}
},
WINTER("冬天") {
@Override
public void poem() {
System.out.println("忽如一夜春风来");
}
};
private String hans;
private Season(String hans) {
this.hans = hans;
}
@Override
public String toString() {
return "Season{" +
"hans='" + hans + '\'' +
'}';
}
}
package Note.enumDemo;
public class Main {
public static void main(String[] args) {
// 获取实例名
String name = Season.SUMMER.name();
System.out.println(name);
// 获取所有实例的数组
Season[] values = Season.values();
for (int i = 0; i < values.length; i++) {
System.out.println(values[i].toString());
}
// 调用实例的方法
Season.SUMMER.poem();
// 通过实例名获取实例
Season spring = Season.valueOf("SPRING");
System.out.println(spring);
}
}
相关文章
- Java中的BufferedReader与BufferedWriter简介与使用
- Java IO流知识点总结
- java打印数组_Java中打印数组的三种方式
- java下载文件或文件夹
- java switch用法_Java switch语句
- java单例模式——详解JAVA单例模式及8种实现方式
- java冒泡排序代码_Java冒泡排序
- java 唯一随机数_JAVA随机数
- java软件开发工程师面试题_软件开发工程师面试题
- Java vs Kotlin
- 【说站】java怎么从键盘输入数据
- java验证手机号正则表达式_Java使用正则表达式验证手机号和电话号码的方法「建议收藏」
- java输出日期格式_java时区转换
- java 内存分析工具 生成 dump_java内存检测工具
- java使用xquery_如何使用Java XQuery
- Java面试集锦(一)之秒杀系统设计
- Spring Boot 2.5.5发布:开始支持Java 17了!
- 机制【Redis Java失效机制解析】(redisjava过期)
- 使用 Java 框架 Scipio ERP 创建一个在线商店
- 实现Java实现Redis锁的研究与应用(redis锁java)
- Java实现MySQL数据插入(java插入mysql)
- Linux查看Java安装路径:一步一步了解(linux查看java安装路径)
- 用C和JAVA分别创建链表的实例