`
touchinsert
  • 浏览: 1329982 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

单体模式(Singleton)

阅读更多

单体模式很简单,不需要UML描述

/**

*

*/

package org.colimas.doxygen.qtools;

/**

* PatternBox: "Singleton" implementation.

* <ul>

* <li>defines an Instance operation that lets clients access its unique instance. Instance is a class operation</li>

* <li>may be responsible for creating its own unique instance.</li>

* </ul>

*

* @author tyrone

*/

public class Singleton {

/** unique instance */

private static Singleton sInstance = null;

/**

* Private constuctor

*/

private Singleton() {

super();

}

/**

* Get the unique instance of this class.

*/

public static synchronized Singleton getUniqueInstance() {

if (sInstance == null) {

sInstance = new Singleton();

}

return sInstance;

}

/**

* This is just a dummy method that can be called by the client. Replace

* this method by another one which you really need.

*/

public void doSomething() {

}

}

/**

*

*/

package org.colimas.doxygen.qtools;

/**

* PatternBox: "Client" implementation.

* <ul>

* <li>requests the Singleton to get its unique instance.</li>

* </ul>

*

* @author tyrone

*/

public class Client {

/**

* Default constructor

*/

public Client() {

super();

}

/**

* This is just an example how to use the Singleton pattern. This operation

* must be customized based on your application needs.

*/

public void useSingleton() {

// TODO: Customize this method based on your application needs.

Singleton singleton = Singleton.getUniqueInstance();

// call a Singleton method

singleton.doSomething();

}

}

实际应用,有很多程序都是单体模式的。那些不能同时打开2个以上主窗口的应用程序都是单体的(希望没有人对这句话钻牛角尖)。例如MSoutlook,无论你点击多少次outlook的图标,也只能有一个outlook主界面。

分享到:
评论

相关推荐

    .NET c# 单体模式(Singleton)

    ### .NET C# 单体模式(Singleton)详解 #### 一、单体模式概述 单体模式(Singleton)是一种常用的软件设计模式,它保证一个类只有一个实例,并提供一个全局访问点。这种模式通常用于控制资源访问,比如数据库...

    javascript 设计模式之单体模式 面向对象学习基础

    JavaScript中的单体模式是一种设计模式,它用于确保一个类只有一个实例,并提供一个全局访问点来获取这个唯一实例。这种模式在JavaScript中尤其重要,因为JavaScript是全局作用域的语言,容易导致变量冲突。单体模式...

    javascript 单例/单体模式(Singleton)

    ### JavaScript 单例/单体模式 (Singleton) #### 概述 单例模式是一种常用的对象创建型设计模式,主要用于确保某个类只有一个实例,并且提供一个全局访问点来获取该实例。这种模式通常与工厂模式一起被提及,它们...

    006Singleton.rar

    单体模式(Singleton)是设计模式中的一种结构型模式,它的主要目的是确保一个类只有一个实例,并提供一个全局访问点。这种模式在很多场景下都非常有用,例如管理共享资源、配置对象或者作为通信中心等。在C++编程中...

    Python单体模式的几种常见实现方法详解

    在软件工程设计模式中,单体模式(Singleton Pattern)是一种常用的创建型设计模式,主要用于确保一个类只有一个实例,并提供一个全局访问点来访问该实例。单体模式在Python等动态语言中有着多种实现方式。本文将...

    JavaScript中实现单体模式分享

    单体模式(Singleton Pattern)是一种在软件工程中广泛使用的设计模式,用于确保一个类只有一个实例,并提供一个全局访问点。在JavaScript这种基于原型的语言中,单体模式有其特定的实现方式,既与传统面向对象语言...

    JavaScript设计模式之单体模式全面解析

    单体模式(Singleton Pattern)是软件设计模式之一,在JavaScript中,该模式非常基础且应用广泛。该模式的主要思想是确保一个类只有一个实例,并提供一个全局访问点来获取这个实例。单体模式通常用于控制应用中资源...

    JavaScript设计模式.pdf

    1. 单体模式(Singleton Pattern): 单体模式是JavaScript中最基本的设计模式之一。它的主要作用是提供一个命名空间,减少全局变量的数量,避免代码冲突,并组织代码使其易于维护。单体模式可以用来划分命名空间,...

    第六章异常处理、递归和单体程序设计

    本章节以清华大学雍俊海编写的Java程序设计教程第三版为基础,详细介绍了这三个方面的知识,使读者能够理解和掌握Java异常处理机制、递归方法的设计技巧以及单体模式的设计模式。 在Java中,异常处理是指程序在运行...

    Delphi单体模式

    根据提供的标题、描述、标签及部分内容,我们可以详细探讨Delphi中的单例(Singleton)设计模式。单例模式是一种常用的软件设计模式,它确保一个类只有一个实例,并提供一个全局访问点来获取该实例。 ### Delphi...

    singleton factory

    在这个程序中,在内部(非界面部分)用了3种设计模式:单体模式,工厂模式,门面模式.和vector容器,希望能对大家有点用

    Java程序设计(雍俊海)ch06

    在Java中,实现单体模式可以防止多线程环境中类实例的多次创建,确保资源的有效管理。 雍俊海教授的教材还配有一本习题集,帮助读者通过实践加深对理论知识的理解。同时,参考文献中提到了他的其他著作,如《Java...

    软件设计模式与体系结构ppt课件整理(考试必备)

    1. 创建型模式:如单例模式(Singleton)、工厂方法模式(Factory Method)和建造者模式(Builder),它们关注对象的创建过程,使得代码更加灵活和易于管理。 2. 结构型模式:包括适配器模式(Adapter)、装饰器...

Global site tag (gtag.js) - Google Analytics