1.多例设计模式:所谓多例只是比单例追加了更多个内部实例化对象产生而已
示例:定义一个表示性别的多例类
package test;
class Sex{
private String title;
public static final int MALE_FLAG = 1;
public static final int FEMALE_FLAG = 2;
private static final Sex MALE = new Sex("男");
private static final Sex FEMALE = new Sex("女");
private Sex(String title){
this.title = title;
}
public static Sex getInstance(int flag){
switch(flag){
case MALE_FLAG:return MALE;
case FEMALE_FLAG:return FEMALE;
default:return null;
}
}
public String toString(){
return this.title;
}
}
public class MultionTest {
public static void main(String[] args){
Sex male = Sex.getInstance(Sex.FEMALE_FLAG);
System.out.println(male);
}
}
注:多例与单例共同的特点:
1.构造方法私有化
2.类内部一定会提供一个静态(static)方法用于取得实例化对象.