`
狂奔的蜗牛zyx
  • 浏览: 19519 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

单例设计模式的懒汉和饿汉机制

 
阅读更多
懒汉:
public class Singleton{
	private static Singleton uniqueInstance;//私有的、静态的、本类的实例引用
	private Singleton(){}	//私有的构造方法
//公有的获得单件实例的方法,其中调用私有的构造方法,将实例赋值给声明的引用
//多线程访问getInstance()方法时在getInstance()方法前加上“synchronized”同步
	public static Singlet synchronizedon getInstance(){
		if(uniqueInstance==null){
			uniqueInstance=new Singlenton();
		}
		return uniqueInstance;
	}
}

懒汉性能:
同步会降低性能,
如果程序可以接受性能降低100倍的话,尽管这样处理。
而且只有在第一次执行此方法时,才真正需要同步。即一旦设置好uniqueInstance变量,就不再需要同步这个方法了。之后每次调用这个方法,同步都是一种累赘


饿汉:如果该实例在创建和运行时负担不是太重,可以考虑用这种“急切”策略创建单例
public class Singleton {
	private static Singleton uniqueInstance=new Singleton ( );	
	private Singleton ( ){   }	
	public static Singleton1 getInstance(){	
		return uniqueInstance;
	}
}
分享到:
评论

相关推荐

    QT_C++单例模式懒汉+饿汉.rar

    "QT_C++单例模式懒汉+饿汉.rar"是一个压缩包,包含了关于C++在QT环境下实现单例模式的实例,分为懒汉式和饿汉式两种实现方式。 首先,我们来看一下单例模式的基本原理。单例模式通常用于那些需要频繁实例化然后销毁...

    单例模式,懒汉模式和饿汉模式

    单例模式是软件设计模式中的一种,用于控制类的实例化过程,确保一个类在整个程序运行期间只有一个实例存在。这种模式常用于管理共享资源,如数据库连接、缓存或者线程池等,以减少资源消耗并提高性能。单例模式有...

    java单例设计模式-饿汉式-懒汉式 (2).pdf

    饿汉式单例设计模式 饿汉式在类加载时即创建单例对象,因此在类加载阶段就已经完成了初始化。由于类加载是线程安全的,所以饿汉式天生就是线程安全的。它的实现代码如下: ```java public class Singleton { ...

    单例设计模式的优缺点和设计思想

    单例设计模式是一种在软件工程中广泛使用的创建型设计模式,其核心思想是确保一个类仅有一个实例,并提供一个全局访问点。这种模式在多种场景下具有显著的优势,同时也存在一定的局限性和潜在的问题。 ### 单例设计...

    java单例设计模式-饿汉式-懒汉式[归纳].pdf

    总结,Java单例设计模式通过饿汉式和懒汉式实现,饿汉式在类加载时创建实例,适用于不需要延迟加载的情况;懒汉式在首次调用时创建,但在多线程环境下需要额外的同步措施以保证线程安全。在实际应用中,应根据具体...

    java单例设计模式-饿汉式-懒汉式[参照].pdf

    单例设计模式是一种常用的设计模式,它确保一个类只有一个实例,并提供一个全局访问点来获取这个实例。在Java中,单例模式有两种常见的实现方式:饿汉式和懒汉式。 1. **饿汉式**: 饿汉式单例在类加载时即创建了...

    设计模式——单例模式

    **设计模式——单例模式** 在软件工程中,设计模式是一种在特定场景下解决常见问题的标准方案,可以被复用并提升代码质量。单例模式是设计模式中的一种,它保证一个类只有一个实例,并提供一个全局访问点。这种模式...

    单例设计模式源码和案例解析

    单例设计模式是一种常用的设计模式,它保证一个类只有一个实例,并提供一个全局访问点。在Java编程中,单例模式的应用广泛,例如控制资源的共享、管理配置信息等。本篇将深入解析单例设计模式的四种实现方式,并通过...

    单例设计模式.pdf

    单例设计模式是一种在软件设计中广泛使用的设计模式,它属于创建型模式,其核心目标是确保类只有一个实例,并提供一个全局访问点。这个模式在Java中尤其常见,因为Java的垃圾回收机制允许对象长时间驻留在内存中,...

    java单例设计模式的好处

    单例设计模式是软件开发中一种重要的设计模式,它的核心思想是确保一个类只有一个实例,并提供全局访问点。在Java中,单例模式通常用于控制特定类的实例化过程,以达到节省系统资源、控制并发访问和实现数据共享等...

    Java的单例设计模式

    单例设计模式是软件设计模式中的经典...总的来说,Java的单例设计模式是一种强大的工具,可以帮助我们有效地管理全局资源,提高系统的效率和稳定性。正确理解和使用单例模式,对于提升代码质量和可维护性具有重要意义。

    java单例设计模式

    Java单例设计模式是一种常用的软件设计模式,它保证一个类只有一个实例,并提供全局访问点。在Java编程中,单例模式常用于管理共享资源,如数据库连接池、线程池或者配置信息等,以提高效率并减少系统内存开销。这个...

    设计模式经典案例之单例模式

    单例模式主要有懒汉式和饿汉式两种实现,饿汉式不会有线程安全的问题,但是提前构造对象占用了一定的资源,如果对内存要求较低的场景可以使用饿汉式实现;懒汉式应使用DCL机制来避免多线程竞争资源的问题,并且懒汉...

    单例设计模式五种例子

    单例设计模式是一种在软件设计中广泛使用的设计模式,它保证了一个类只有一个实例,并提供一个全局访问点。这种模式在需要频繁创建和销毁对象,或者对象的创建代价高昂时特别有用,例如数据库连接、线程池等。在C#中...

    1.设计模式-单例设计模式1

    总的来说,单例设计模式在节省资源、控制并发和简化代码结构等方面有着重要的作用。理解并正确实现单例模式,能够帮助我们编写更加高效和易于维护的代码。同时,也需要关注其可能带来的问题,如序列化和反射攻击,...

    java单例设计模式 4中实现方式,重点介绍了静态内部类的实现方式

    Java单例设计模式详解 Java单例设计模式是一种创建型设计模式,可以保证一个类只有一个实例,并提供全局访问点。单例模式在实际开发中经常使用,可以避免多个实例引起的资源浪费和同步问题。常见的Java实现方式有...

    2种单例模式:1赖汉式:2饿汉式

    在Java编程语言中,单例模式是一种常用的软件设计模式,它的主要目的是确保一个类只有一个实例,并提供一个全局访问点。单例模式的应用广泛,比如在管理系统资源、配置信息、日志记录等方面。这里我们将详细探讨标题...

    设计模式之单例模式源码demo

    单例模式是软件设计模式中的经典模式之一,其主要目的是控制类的实例化过程,确保在应用程序的整个生命周期中,某个类只有一个实例存在。这样的设计通常适用于那些需要频繁创建和销毁,但资源消耗较大的对象,如...

    多线程(20)单例设计模式1

    本文将详细介绍四种常见的Java单例设计模式:饿汉式、懒汉式、Holder方式和枚举方式。 1. **饿汉式** 饿汉式单例在类加载时就完成了初始化,因此在多线程环境下是线程安全的。这种方式通过静态常量实例化对象,...

    单例模式.zip(c#设计模式)

    在《设计模式》第二版中,刘伟老师深入讲解了单例模式,本压缩包中的"单例模式习题6"和"单例模式习题7"可能是书中的课后练习,旨在帮助读者更好地理解和运用单例模式。 单例模式的核心思想是控制类的实例化过程,...

Global site tag (gtag.js) - Google Analytics