• java设计模式之单例设计模式和多例设计模式


    单例设计模式:构造方法私有化,在类的内部定义static属性和方法,利用static方法来取得本类的实例化对象;无论外部产生多少个实例化对象,本质上只有一个实例化对象

    饿汉式单例设计

    class Singleton{
        private static final Singleton INSTANCE = new Singleton();//产生一个实例化对象
        private Singleton(){}//封装构造方法
        public static Singleton getInstance(){
            return INSTANCE;//取得实例化对象
        }
        public void print(){
            System.out.print("hello word");
        }
    }
    public class Test{
        public static void main(String args[]){
            Singleton s = Singleton.getInstance();//无论调用多少次getInstance()方法,产生的实例化对象都是相同的
            s.print();
        }
    }

    懒汉式设计模式

    class Singleton{
        private static final Singleton INSTANCE;//定义一个未实例化的本类对象
        private Singleton(){}//封装构造方法
        public static Singleton getInstance(){
            if(INSTANCE == null){  
                INSTANCE = new Singleton();
            }
            return INSTANCE;//取得实例化对象
        }
        public void print(){
            System.out.print("hello word");
        }
    }
    public class Test{
        public static void main(String args[]){
            Singleton s = Singleton.getInstance();//无论调用多少次getInstance()方法,产生的实例化对象都是相同的
            s.print();
        }
    }

    多例设计模式:构造方法私有化,产生特定个数对象

    class Sex{
        private String sex;
        private static final Sex MAN = new Sex("男");
        private static final Sex WOMAN = new Sex("女");
        private Sex(String sex){
            this.sex = sex;
        }
        public static Sex getInstance(int ch){
            switch(ch){
                case 1:
                    return MAN;
                case 2:
                    return WOMAN;
                default:
                    return null;
            }
        }
        public String toString(){
            return sex;
        }
    }
    public class Test{
        public static void main(String args[]){
            Sex s = Sex.getInstance(1);
            System.out.println(s);
        }
    }
  • 相关阅读:
    Web Service平台有三种元素构成:SOAP、WSDL、UDDI。区别和联系
    WSDL(Web服务描述语言)详细解析(全文转载学习用)
    SOAP和WebService的那些事
    成本加浮动酬金合同 成本加激励费用合同
    理解量子信息
    面向(过程、对象、组件、服务)编程
    POP-OOP-SOP-COP-SOA-AOP
    法律知识
    义帝熊心--秦末汉初
    接口绑定有几种实现方式,分别是怎么实现的?
  • 原文地址:https://www.cnblogs.com/hu1056043921/p/7340656.html
Copyright © 2020-2023  润新知