1.枚举类定义
package com.cj.java5;
public class EnumTest {
public static void main(String[] args) {
Season spring = Season.SPRING;
System.out.println(spring);
}
}
enum Season{
SPRING("春天","春暖花开"),
SUMMER("夏天","烈日炎炎");
private final String seasonName;
private final String seasonDesc;
Season(String seasonName, String seasonDesc) {
this.seasonName = seasonName;
this.seasonDesc = seasonDesc;
}
public String getSeasonName() {
return seasonName;
}
public String getSeasonDesc() {
return seasonDesc;
}
}
结果:SPRING
以前的定义方式:
package com.cj.java5;
public class EnumTest1 {
public static void main(String[] args) {
Season1 spring = Season1.SPRING;
System.out.println(spring);
}
}
class Season1{
private final String seasonName;
private final String seasonDesc;
public static final Season1 SPRING = new Season1("春天","春暖花开");
public static final Season1 SUMMER = new Season1("夏天","烈日炎炎");
public Season1(String seasonName, String seasonDesc) {
this.seasonName = seasonName;
this.seasonDesc = seasonDesc;
}
public String getSeasonName() {
return seasonName;
}
public String getSeasonDesc() {
return seasonDesc;
}
}
结果:com.cj.java5.Season1@6d6f6e28
2.常用方法
public class EnumTest {
public static void main(String[] args) {
Season spring = Season.SPRING;
System.out.println(spring);
//遍历
for (int i = 0; i < Season.values().length; i++) {
System.out.println(Season.values()[i]);
}
//获取单个
Season summer = Season.valueOf("SUMMER");
System.out.println(summer);
//toString
System.out.println(summer.toString());
}
}
3.类的继承
package com.cj.java5;
/**
* 三、常用方法
* values()
* valueof()
* toString()
*/
interface info{
void show();
}
public class EnumTest {
public static void main(String[] args) {
Season spring = Season.SPRING;
System.out.println(spring);
//遍历
for (int i = 0; i < Season.values().length; i++) {
System.out.println(Season.values()[i]);
}
//获取单个
Season summer = Season.valueOf("SUMMER");
System.out.println(summer);
//toString
System.out.println(summer.toString());
summer.show();
}
}
enum Season implements info{
SPRING("春天","春暖花开"){
@Override
public void show() {
System.out.println("春天在哪里呀,春天在哪里呀");
}
},
SUMMER("夏天","烈日炎炎"){
@Override
public void show() {
System.out.println("夏天夏天悄悄过去,留下小秘密");
}
};
private final String seasonName;
private final String seasonDesc;
Season(String seasonName, String seasonDesc) {
this.seasonName = seasonName;
this.seasonDesc = seasonDesc;
}
public String getSeasonName() {
return seasonName;
}
public String getSeasonDesc() {
return seasonDesc;
}
}