zoukankan      html  css  js  c++  java
  • 【java】设计模式-单例设计模式

    单例设计模式:解决一个类在内存中是存在一个对象的问题。当需要该事物的对象在内存中唯一时,将以下三步添加即可。

    思想:想要保证对象唯一
    1.为了避免其他程序过多的建立该类对象,先禁止其他程序建立该类对象
    2.为了其他程序访问到该类对象,只好在本类中,自定义一个对象
    3.为了方便其他程序对自定义对象的访问,可以对外提供一个访问方式

    思想如何实现:
    1.讲构造函数私有化
    2.在类中建立一个本类对象
    3.提供一个方法可以获取本类对象

    /**
    名称:饿汉式
    特点:先初始化对象,Single类一进内存,就已经创建好了对象。
    */
    
    class Single
    {
    	private Single(){};
    	private static Single s=new Single();
    	public static Single getIntance()
    	{
    		return s;
    	}
    }
    
    /**
    名称:懒汉式
    特点:对象是方法被调用是,才初始化。也叫对象的延时加载。
    		Single类进入内存,对象还没有存在,只有调用getIntance方法时,才建立对象
    */
    
    class Single
    {
    	private Single(){};
    	private static Single s=null;
    	public static Single getIntance()
    	{	
    		if (s==null)
    		{
    			s=new Single();
    		}
    		return s;
    	}
    }
    /****************************************************************/
    
    class  SingleDemo
    {
    	public static void main(String[] args) 
    	{
    		Single ss=Single.getIntance();
    	}
    }
    

     在程序编程中,推荐饿汉式,因为其他程序使用时,对象已经存在。懒汉式存在一个问题,当同时调用getIntance方法时,可能会实例化多个对象。

  • 相关阅读:
    分层应用——怎样实现登录?
    浅谈UML的概念和模型之UML九种图
    C++ 顶层 const
    Cooley-Tukey算法 (蝶形算法)
    Android 4.4 Kitkat 使能 USB adb 功能
    Linux多线程编程小结
    排序算法汇总总结
    nodeJs基础
    MyBatis入门学习(一)
    IOC/DI的基本思想
  • 原文地址:https://www.cnblogs.com/paulwinflo/p/7930249.html
Copyright © 2011-2022 走看看