设计模式之单例模式(java实现)

单例模式:在这个模式下,一个类只能有一个对象,有两种方式

1、饿汉式   在加载类时直接new出对象

package cn.gzsxt.servlet;

public class SingletonEH {

	//私有化构造器
	private SingletonEH(){}

	//创建一个对象
	private static SingletonEH instance = new SingletonEH();

	//提供一个公有的方法调用
	public static SingletonEH getInstance(){
		return instance;
	}
}

2、懒汉式     在第一次调用getInstance()方法时new出对象

package cn.gzsxt.servlet;

/**
 * @author jia
 *单例模式之懒汉式
 */
public class SingletoneLH {
	//私有化构造器
	private SingletoneLH(){}

	//创建一个空对象
	private static SingletoneLH instance = null;

	//创建一个共有的方法new对象,并且返回该对象
	public static SingletoneLH getInstance(){

		if(instance == null){
			synchronized (SingletoneLH.class) {
				if(instance == null){
					instance = new SingletoneLH();
				}
			}
		}

		return instance;

	}
}

  

  

  

原文地址:https://www.cnblogs.com/heviny/p/10840411.html

时间: 2024-08-29 10:35:23

设计模式之单例模式(java实现)的相关文章

【养孩子这么贵,还是生一个算了吧】设计模式之单例模式Java版

定义 单例模式,保证一个类仅有一个实例,并提供一个访问它的全局访问点.所以在需要保证让一个类只有一个实例时,可以参考采用单例模式.通常我们可以让一个全局变量使得一个对象被访问,但它不能防止你实例化多个对象.唯一的办法就是,让类自身负责保存它的唯一实例.这个类可以保证没有其他实例可以被创建,并且它可以提供一个访问该实例的方法. 方法一 其一,不让其他类去实例化自己类的实例,那我们很容易想到可以通过定义一个private的构造函数.这是因为如果我们自定义了一个private的构造函数,那么系统默认的

大话设计模式_单例模式(Java代码)

单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点. 简单描述:构造函数设置为private,以禁止外部类实现本类.本类中提供一个静态方法返回一个本例对象(注意多线程中的实现) 大话设计模式中的截图: 代码例子: Singleton类: 1 package com.longsheng.singleton; 2 3 public class Singleton { 4 5 private static Singleton instance = null; 6 private stati

Java设计模式:单例模式

概念: java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例.饿汉式单例.登记式单例. 单例模式有以下特点: 1.单例类只能有一个实例. 2.单例类必须自己创建自己的唯一实例. 3.单例类必须给所有其他对象提供这一实例. 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例.在计算机系统中,线程池.缓存.日志对象.对话框.打印机.显卡的驱动程序对象常被设计成单例.这些应用都或多或少具有资源管理器的功能.每台计算机可以有若干个打印机,但只能

[转]JAVA设计模式之单例模式

原文地址:http://blog.csdn.net/jason0539/article/details/23297037 概念: java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例.饿汉式单例.登记式单例. 单例模式有以下特点: 1.单例类只能有一个实例. 2.单例类必须自己创建自己的唯一实例. 3.单例类必须给所有其他对象提供这一实例. 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例.在计算机系统中,线程池.缓存.日志对象.对话

(九)JAVA设计模式之单例模式

JAVA设计模式之单例模式 一.单例模式的介绍 Singleton是一种创建型模式,指某个类采用Singleton模式,则在这个类被创建后,只可能产生一个实例供外部访问,并且提供一个全局的访问点.     全局对象和Singleton模式有本质的区别,因为大量使用全局对象会使得程序质量降低,而且有些编程语言根本不支持全局变量.最重要的是传统的全局对象并不能阻止一个类被实例化多次. 二.单例模式的特点 单例类只能有一个实例 单例类必须自己创建自己的唯一实例. 单例类必须给所有其他对象提供这一实例.

Java 设计模式(3)单例模式

前言 概念: java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例.饿汉式单例.登记式单例. 单例模式有以下特点: 1.单例类只能有一个实例. 2.单例类必须自己创建自己的唯一实例. 3.单例类必须给所有其他对象提供这一实例. 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例.在计算机系统中,线程池.缓存.日志对象.对话框.打印机.显卡的驱动程序对象常被设计成单例.这些应用都或多或少具有资源管理器的功能.每台计算机可以有若干个打印机,

JAVA设计模式之单例模式(转)

本文继续介绍23种设计模式系列之单例模式. 概念: java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例.饿汉式单例.登记式单例. 单例模式有以下特点: 1.单例类只能有一个实例. 2.单例类必须自己创建自己的唯一实例. 3.单例类必须给所有其他对象提供这一实例. 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例.在计算机系统中,线程池.缓存.日志对象.对话框.打印机.显卡的驱动程序对象常被设计成单例.这些应用都或多或少具有资源管理器

【java】 java设计模式(3):单例模式(Singleton)

单例对象(Singleton)是一种常用的设计模式.在Java应用中,单例对象能保证在一个JVM中,该对象只有一个实例存在.这样的模式有几个好处: 1.某些类创建比较频繁,对于一些大型的对象,这是一笔很大的系统开销. 2.省去了new操作符,降低了系统内存的使用频率,减轻GC压力. 3.有些类如交易所的核心交易引擎,控制着交易流程,如果该类可以创建多个的话,系统完全乱了.(比如一个军队出现了多个司令员同时指挥,肯定会乱成一团),所以只有使用单例模式,才能保证核心交易服务器独立控制整个流程. 首先

java 设计模式之单例模式

--------2015-11-20 14:45:10 java设计模式之单例模式(Singleton): ---应用场合:只需要一个对象就可以了,例如一个朝代一个皇帝. ---作用:保证某个应用程序中某个实例有且只有一个.共同使用一个,节省资源. ---类型:饿汉模式,懒汉模式. 一.饿汉模式(类加载的时候就会实例化,线程安全) 1 package com.sun.singleton; 2 3 //饿汉模式 4 public class Singleton { 5 6 //将构造函数私有化,不