package www.bit.java; import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer; class Color{ //给一个属性,用于区分 private String title; //三个对象如何取得 public static final int RED_FALG = 1; public static final int GREEN_FALG = 5; public static final int BLUE_FALG = 10; //类的内部提供实现好的对象 //三原色 private static final Color RED = new Color("红"); private static final Color GREEN = new Color("绿"); private static final Color BLUE = new Color("蓝"); //不管单例还是多例,先把构造方法私有化,在类的外部才无法产生对象,才能控制个数 private Color(String title){ this.title = title; } //提供一个静态方法,将其返回,返回值是Color类型 public static Color getInstance(int flag){ switch (flag){ case RED_FALG: return RED; case GREEN_FALG: return GREEN; case BLUE_FALG: return BLUE; default: return null; } } @Override public String toString() { return this.title; } } public class Test { public static void main(String[] args) { //打印一个红对象,传一个红 Color color = Color.getInstance(Color.RED_FALG); //直接输出这个对象 System.out.println(color); } }
简单多例类
最新推荐文章于 2023-09-01 18:06:04 发布