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

    package com.mafangshan.designpattern.singletonpattern;
    
    /**
     * @Description
     * @Author Created by shusheng.
     * @Email shusheng@yiji.com
     * @Date 2017-07-03
     */
    public class Singleton {
    
        public static void main(String[] args)
        {
            //创建SingletonPattern对象不能通过构造器,只能通过getInstance方法
            Singleton s1 = Singleton.getSingleton();
            Singleton s2 = Singleton.getSingleton();
            //将输出true
            System.out.println(s1 == s2);
        }
        //使用一个变量来缓存曾经创建的实例
        private static Singleton singleton;
        //将构造器使用private修饰,隐藏该构造器
        private Singleton(){
            System.out.println("Singleton被构造!");
        }
        //提供一个静态方法,用于返回Singleton实例
        //该方法可以加入自定义的控制,保证只产生一个Singleton对象
        public static Singleton getSingleton()
        {
            //如果instance为null,表明还不曾创建Singleton对象
            //如果instance不为null,则表明已经创建了Singleton对象,将不会执行该方法
            if (singleton == null)
            {
                //创建一个Singleton对象,并将其缓存起来
                singleton = new Singleton();
            }
            return singleton;
        }
    
    }
    终身学习者
  • 相关阅读:
    .net程序员书单
    脱敏小软件
    .NET处理HTTP请求
    WPF 按名称查找控件
    软件工程现行国标汇集
    企业应用架构模式读书笔记 第一章 分层
    mysql远程访问
    知道二叉树的先序和中序遍历,重建该二叉树
    微信小程序地图模块
    微信小程序蓝牙模块
  • 原文地址:https://www.cnblogs.com/zuixinxian/p/7119804.html
Copyright © 2011-2022 走看看