42java枚举(多例与枚举)

73 阅读1分钟

枚举(多例与枚举)

一、具体内容

枚举是几乎所有编程语言都支持的数据类型,而在java诞生十多年后才追加了枚举,所以可以得出一个结论:

从事 Java 开发可以不会枚举。

认识枚举

认识枚举就必须回顾一下多例设计模式。多例设计模式特点:构造方法私有化,而后类内部需要提供有若干个实例化对象,后面通过 static 方法返回。

范例:定义一个描述颜色基色的多例设计类:

package cn.mldn. demo;

class color i

private static final color RED = new Color("RED") ;

private static final color GREEN = new color( "GREEN") ;

private static final color BLUE = new color("BLUE") ;

private string title ;

private color(string title) {

this.title = title ;

}

public static color getInstance( int ch) [

switch (ch) {

case 0 : return RED ;

case 1 : return GREEN ;

case 2 : return BLUE ;

default : return null ; 

}

}

public string tostring() {

return this.title ;

这是一个基础的多例设计模式,而后调用的时候只需要:

public static void main(String[ ] args) { System. out. println();} //后边跟上 Coloe.getInstance(0) //形成:

public static void main(String[ ] args) { System. out. println(Coloe.getInstance(0));}

执行就会出现 RED

以上的做法实在 JDK1.5 之前的做法,这样做的目的是限制本类实例化对象的产生个数。但是从 JDK1.5 开始有了枚举,所以代码开发简单了:

范例:基于枚举开发

比如 enum Color{RED,GREEN,BLUE}。同样后边跟上 RED:

package cn.mldn.demo;

enum Color {

RED,GREEN,BLUE

}

public class TestDemo {

public static void main(String[ ] args) {

system.out.print1n(Color.RED);

}

执行得到的结果和刚才一模一样。

 

二、总结

实际上所谓的枚举就是一种高级的多例设计模式,这就是枚举的基本概念