Java_多例设计模式

3.6、多例设计模式(理解)

         单例设计模式只留有一个类的一个实例化对象,而多例设计模式,会定义出多个对象,例如:定义一个表示星期X的类,这个类的对象只有7个取值,定义一个表示性别的类,只有2个取值,定义一个表示颜色基色的操作类,颜色只有三个:红、绿、蓝,这种情况下,这样的类就不应该由用户无限制的去创造实例化对象,应该只使用有限的几个,这个就属于多例设计,但不管是单例设计还是多例设计,有一个核心不可动摇 —— 构造方法私有化。

class Sex {

         private static final Sex MALE = new Sex("") ;

         private static final Sex FEMALE = new Sex("") ;

         private String title ;

         private Sex(String title) {       // 构造方法私有化

                   this.title = title ;

         }

         public static Sex getInstance(String msg) {

                   switch(msg) {

                            case "male" :

                                     return MALE ;

                            case "female" :

                                     return FEMALE ;

                            default :

                                     return null ;

                   }

         }

         public String getTitle() {

                   return this.title ;

         }

}

public class Test {

         public static void main(String args[]) {

                   Sex male = Sex.getInstance("male") ;

                   System.out.println(male.getTitle()) ;

         }

}

         构造方法的封装是实现所有操作的基础,但是在我们所编写的代码过程之中,首先考虑的不是构造方法的封装。

原文地址:https://www.cnblogs.com/guwenren/p/3016533.html