枚举

如何定义枚举类

        什么枚举类:类里的对象是有限个,可以枚举出来

如何使用enum定义枚举类

            枚举类的主要方法

实现接口的枚举类

若枚举只有一个成员,则可以看作为一种单利模式的实现方式。

----------------------------------------------------------------------

public classTestSeason {

public static voidmain(String[] args) {

Season spring = Season.SPRING;

System.out.println("-_-_-_-");

spring.show();

System.out.println("-_-_-_-");

System.out.println(spring);

}

}

//自定义枚举类

classSeason{

private finalStringseasonName;

private finalStringseasonDesc;

privateSeason(String seasonName,String seasonDesc) {

this.seasonName= seasonName;

this.seasonDesc= seasonDesc;

}

// 称为枚举类的原因,在类的内部确定好,外部能做的就是一个调用

//

public static finalSeasonSPRING=newSeason("春天Spring","春暖花开");

public static finalSeasonSUMMER=newSeason("夏天Summer","烈日炎炎");

public static finalSeasonAUTOM=newSeason("秋天Autom","秋高气爽");

public static finalSeasonWINTER=newSeason("冬天Winter","白雪皑皑");

publicStringgetSeasonName() {

returnseasonName;

}

publicStringgetSeasonDesc() {

returnseasonDesc;

}

@Override

publicStringtoString() {

return"Season{"+

"seasonName='"+seasonName+'\''+

", seasonDesc='"+seasonDesc+'\''+

'}';

}

public voidshow(){

System.out.println("show season");

}

}

-------------------------------------------------------------

/**

* Created by daqingtian on 2017/8/3.

* 枚举类

*/

public classTestSeason1 {

public static voidmain(String[] args) {

Season1 spring = Season1.SAPRING;

System.out.println(spring);

//1 values 返回season 的所有枚举对象

Season1[] seasons = Season1.values();

for(inti =0;i

System.out.println(seasons[i]);

}

//valueOf(String name)要求传入的形参是枚举对象的名字;

//Exception in thread "main" java.lang.IllegalArgumentException:

// No enum constant charact9.Season1.SPRING

//如果传入的枚举对象错误,会出现那样的错误。

String str ="SAPRING";

Season1 season = Season1.valueOf(str);

System.out.println(season);

}

}

enumSeason1{

SAPRING("春天Spring","春暖花开"),

SUMMER("夏天Summer","烈日炎炎"),

AUTOM("秋天Autom","秋高气爽"),

WINTER("冬天Winter","白雪皑皑");

private finalStringseasonName;

private finalStringseasonDesc;

privateSeason1(String seasonName,String seasonDesc) {

this.seasonName= seasonName;

this.seasonDesc= seasonDesc;

}

publicStringgetSeasonName() {

returnseasonName;

}

publicStringgetSeasonDesc() {

returnseasonDesc;

}

}

------------------------------------------------------

/**

* Created by daqingtian on 2017/8/3.

* 枚举类实现接口

*/

public classTestSeason3 {

public static voidmain(String[] args) {

Season3 spring = Season3.SAPRING;

//        System.out.println(spring);

//1 values 返回season 的所有枚举对象

Season3[] seasons = Season3.values();

for(inti =0;i

//            System.out.println(seasons[i]);

}

//valueOf(String name)要求传入的形参是枚举对象的名字;

//Exception in thread "main" java.lang.IllegalArgumentException:

// No enum constant charact9.Season1.SPRING

//如果传入的枚举对象错误,会出现那样的错误。

String str ="SAPRING";

Season3 season = Season3.valueOf(str);

season.show();

}

}

interfaceInfo{

voidshow();

}

enumSeason3implementsInfo{

SAPRING("春天Spring","春暖花开") {

@Override

public voidshow() {

System.out.println("春天来了");

}

},

SUMMER("夏天Summer","烈日炎炎") {

@Override

public voidshow() {

System.out.println("夏天来了");

}

},

AUTOM("秋天Autom","秋高气爽") {

@Override

public voidshow() {

System.out.println("秋天来了");

}

},

WINTER("冬天Winter","白雪皑皑") {

@Override

public voidshow() {

System.out.println("冬天来了");

}

};

private finalStringseasonName;

private finalStringseasonDesc;

privateSeason3(String seasonName,String seasonDesc) {

this.seasonName= seasonName;

this.seasonDesc= seasonDesc;

}

publicStringgetSeasonName() {

returnseasonName;

}

publicStringgetSeasonDesc() {

returnseasonDesc;

}

//    public void show(){

//        System.out.println("show season");

//    }

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,373评论 19 139
  • 一 Java 枚举7常见种用法DK1.5引入了新的类型——枚举。在 Java 中它虽然算个“小”功能,却给我的开发...
    欢乐时光欢乐你我阅读 4,316评论 0 6
  • package com.michael.jdk15; /* * jdk1.5新特性之 -- 枚举 * 使用:某些方...
    Michael_林阅读 1,865评论 0 0
  • 本文包括:枚举由来如何使用?枚举类特性单例设计模式定义特殊结构枚举星期输出中文的案例枚举类API 枚举(enum)...
    廖少少阅读 7,835评论 2 14
  • 母爱就像太阳,无论时间多久,无论走到哪里,都会感受到她的照耀和温热。 搬进新房子有一段时间了,从小就...
    0黑色蔷薇0阅读 1,748评论 1 3