`

单例模式(Singleton Pattern)_Java

阅读更多

Singleton Pattern

 确保一个类只有一个实例,并提供一个全局访问点

 

模式一

package com.pattern.singleton;

public class Temp {
	//临时类,用来对比单例模式
}

 

package com.pattern.singleton;

public class Singleton {
	//私有化构造函数
	private Singleton(){}
	//私有并静态实例
	private static Singleton singleton;
	//提供公有的获取实例的方法
	public static Singleton getInstances(){
		if(singleton==null){
			singleton=new Singleton();
		}
		return singleton;
	}
}

 

package com.pattern.singleton;

public class Test {

	public static void main(String[] args) {
		Singleton s1=Singleton.getInstances();
		Singleton s2=Singleton.getInstances();
		System.out.println(s1==s2);//true
		
		Temp t1=new Temp();
		Temp t2=new Temp();
		System.out.println(t1==t2);//false
	}
}

模式二

package com.pattern.singleton;
/**
 * 这种单例模式是先创建一份实例,需要的话直接使用即可
 */
public class Singleton2 {
	private Singleton2(){}
	private static Singleton2 singleton=new Singleton2();
	public static Singleton2 getInstances(){
		return singleton;
	}
}

 多线程情况下的单例模式

package com.pattern.singleton;

public class ThreadSingleton {
	//私有化构造函数
	private ThreadSingleton(){}
	//私有并静态实例
	private static ThreadSingleton singleton;
	//提供公有,线程安全的获取实例的方法
	public static synchronized ThreadSingleton getInstances(){
		if(singleton==null){
			singleton=new ThreadSingleton();
		}
		return singleton;
	}
}

 

3
1
分享到:
评论

相关推荐

    单例模式 Singleton Pattern

    ### 单例模式 Singleton Pattern #### 概述 单例模式是一种常见的设计模式,属于创建型模式之一。这种模式的核心在于确保某个类只有一个实例存在,并且提供一个全局访问点来获取该实例。单例模式在Java开发中尤其...

    Singleton pattern单例模式应用

    ### Singleton Pattern 单例模式应用详解 #### 一、单例模式概述 单例模式(Singleton Pattern)是一种常用的软件设计模式,在系统中确保某个类只有一个实例,并提供一个全局访问点。这种模式通常用于控制资源的...

    创建型模式之单例模式(Singleton Pattern)

    单例模式是软件设计模式中的一种,属于创建型模式,它的主要目的是确保一个类只有一个实例,并提供一个全局访问点。这种模式在很多场景下都非常有用,例如管理共享资源、配置对象或者缓存服务等。 单例模式的核心...

    设计模式 之 “单例模式[Singleton Pattern]”

    **单例模式(Singleton Pattern)**是软件设计模式中的一种基础模式,它的核心思想是确保一个类只有一个实例,并提供一个全局访问点。这种模式在很多场景下非常有用,比如配置管理、线程池、数据库连接池等,这些都...

    JAVA 23种设计模式(全).Design Pattern_Java模式

    1. **创建型模式**(Creational Patterns):这类模式主要关注对象的创建过程,包括单例模式(Singleton)、工厂方法模式(Factory Method)、抽象工厂模式(Abstract Factory)、建造者模式(Builder)和原型模式...

    单例模式Singleton

    单例模式(Singleton Pattern)是一种常用的软件设计模式,它的核心思想是确保一个类在整个应用程序中只有一个实例存在,并提供一个全局访问点来获取这个实例。这种模式在很多场景下非常有用,比如管理系统资源、...

    Java单例模式应用研究.pdf

    单例模式(Singleton Pattern)作为一种最基本的创建型设计模式,其主要目的是控制一个类的实例化过程,确保在整个应用程序中仅存在一个实例,并且该实例能够被全局访问。这种模式在实际软件开发中有着极其广泛的应用...

    设计模式-Java单例模式的各种实现实例

    单例模式(Singleton Pattern)是一种常用的软件设计模式,它保证一个类仅有一个实例,并提供一个访问该实例的全局访问点。这种模式通常用于需要频繁地创建和销毁的对象,以减少系统性能开销。 单例模式的优点: ...

    Java24种设计模式,Java24种设计模式,24种设计模式,学会了这24种设计模式,可以打遍天下无敌手,设计模式非常重要

    3、单例模式SINGLETON PATTERN 4、多例模式MULTITION PATTERN 5、工厂方法模式FACTORY METHOD PATTERN 6、抽象工厂模式ABSTRACT FACTORY PATTERN 7、门面模式FACADE PATTERN 8、适配器模式ADAPTER PATTERN 9、模板...

    第6讲_单例模式(Singleton)

    单例模式(Singleton Pattern)是一种常用的软件设计模式,它的核心意图是确保一个类在整个系统中只有一个实例,并提供一个全局访问点。这样的设计可以避免资源浪费,尤其在处理那些需要共享状态且频繁使用的对象时...

    设计模式_单例模式.zip

    以下是一个简单的Java单例模式实现: ```java public class Singleton { private static Singleton instance; private Singleton() {} public static synchronized Singleton getInstance() { if (instance =...

    java设计模式之单例模式详解

    单例模式(Singleton Pattern)是面向对象设计模式中的一种,属于创建型模式。它确保一个类仅有一个实例,并提供一个全局访问点来访问该实例。单例模式的核心在于控制类的实例化过程,保证在任何情况下都只会创建一...

    JAVA设计模式中的单例模式

    其中,单例模式(Singleton Pattern)是一种常用的创建型模式,其核心在于确保一个类只有一个实例,并提供一个全局访问点。这种模式在多种场景下非常有用,比如管理共享资源、控制并发访问等。 #### 单例模式的重要...

    JAVA单例模式的几种实现方法

    ### JAVA单例模式的几种实现方法 #### 一、饿汉式单例类 饿汉式单例类是在类初始化时就已经完成了实例化的操作。这种实现方式简单且线程安全,因为实例化过程是在编译期间完成的,不会受到多线程的影响。 **代码...

    Java聊天室 观察者模式和单例模式

    单例模式(Singleton Pattern)确保一个类只有一个实例,并提供一个全局访问点。在聊天室中,通常有一个全局的服务器实例来处理所有的客户端连接和通信。单例模式避免了多线程环境下的资源冲突,保证了所有客户端都...

    ava常用设计模式-单例模式

    单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一,有以下特点: 1. 单例类只能有一个实例。 2. 单例类必须自己创建自己的唯一实例。 3. 单例类必须给所有其他对象提供这一实例。 单例模式有多种实现...

    单例模式的Java示例代码

    在Java中实现单例模式有多种方法,每种都有其特定的优缺点。以下是对单例模式及其Java实现的详细解释。 ### 单例模式的核心思想 1. **唯一性**:确保类只有一个实例。 2. **全局访问点**:提供一个全局访问点,让...

    单例模式(Singleton Pattern)

    单例模式是设计模式中的一种,它用于控制类的实例化过程,确保在整个应用程序中,对于特定类,只有一个实例存在。这种模式常被用来管理共享资源或者全局配置,以提高性能和减少系统间的耦合。 单例模式的核心在于...

    线程安全的单例模式

    单例模式(Singleton Pattern)是软件开发中最常用的创建型设计模式之一,它的主要目标是确保一个类只有一个实例,并提供一个全局访问点。单例模式在很多场景下都非常有用,例如系统配置管理、日志记录等场合,这些...

    JAVA单例模式应用研究

    单例模式(Singleton Pattern)作为一种最常见的创建型设计模式之一,在软件开发中扮演着重要角色。它主要应用于需要对系统资源进行统一管理和控制的场景,例如Windows中的文件系统、回收站、打印机等功能就是典型的...

Global site tag (gtag.js) - Google Analytics