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

    思想:

    1. 为了避免其他程序过多建立该类对象,先禁止其他程序建立该类对象

    2. 为了让其他程序可以访问到该类对象,只好在本类中自定义一个对象

    3. 为了方便其他程序对自定义对象的访问,可以对外提供一些访问方式

    代码体现:

    1. 将构造函数私有化

    2. 在类中创建一个本类对象

    3. 提供一个方法可以获取到该对象

    代码一

    先初始化对象

    称为:饿汉式

    Single类一进内存,就已经创建好了对象。

    public class SingleModeDemo {

    public static void main(String[] args){

    }
    }


    class Single{

    private Single(){}

    private static Single s = new Single();

    public Single getInstance(){
    return s;
    }
    }

    代码二

    对象是方法被调用时,才初始化,也叫作对象的延时加载。

    称为:懒汉式

    Single类进内存,对象还没有存在,只有调用了getInstance方法时,才建立对象

    public class SingleModeDemo {

    public static void main(String[] args){
    System.out.println("Hello world");
    }
    }


    class Single{

    private static Single s = null;

    private Single(){}

    public static synchronized Single getInstance(){
            if(s==null){
                synchronized(Single.class){
                    if(s==null)
                        s = new Single();
                }
            }
    return s;
    }
    }

    原则:定义单例,建议使用饿汉式

  • 相关阅读:
    搞笑的菜名
    sad news
    转载:比尔盖茨给adobe CEO的五点意见(歪版)/ 很搞笑 ;)
    [ZZ]TDSCDMA试商用网已经建成 开始向用户放号
    关于Java IDE
    候捷要来南京了吗?
    读书笔记:《Java2 教程》(二)
    [ZZ]当今世界十大定律
    久违了,博客园
    解决小型局域网中xp系统的机器不能共享资源的问题
  • 原文地址:https://www.cnblogs.com/demonzk/p/6297501.html
Copyright © 2011-2022 走看看