`
bo_hai
  • 浏览: 565830 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

安全发布单例模式

 
阅读更多

1、最简单的方法:

public class Singletion {
	private static Singletion singletion = new Singletion();
	private Singletion() {}
	public static Singletion getInstance() {
		return singletion;
	}
}

2、使用lazy的方法:

public class ResourceFactory {

	private ResourceFactory(){}
	
	private static class ResourceHandle{
		public static Resource resource = new Resource(); 
	}
	
	public static Resource getResource() {
		return ResourceFactory.ResourceHandle.resource;
	}
	
	static class Resource{}
}

 参考资料:

主题:面试题:线程安全的单例模式

分享到:
评论
1 楼 bo_hai 2019-03-15  
上述两种办法都不是最好的单例模式。

相关推荐

    设计模式 中的 单例模式和观察者模式

    在给定的标题和描述中,我们关注的是两种重要的设计模式:单例模式和观察者模式。 首先,让我们深入了解单例模式。单例模式是一种确保一个类只有一个实例,并提供全局访问点的设计模式。这种模式在资源管理、缓存、...

    发布订阅者模式实现(内含单例模式、缺省适配器模式)

    - 实现单例模式通常有懒汉式、饿汉式和双重检查锁定等方式,选择哪种方式取决于线程安全需求和性能考虑。 3. **缺省适配器模式(Default Adapter Pattern)**: - 当一个类需要使用某个接口,但不希望实现所有的...

    java单例模式在android中的应用

    8. 全局事件总线:如EventBus,通过单例模式实现事件的发布和订阅,确保事件传递的统一性。 9. 日志管理:日志记录器使用单例,方便在整个应用中统一控制日志级别和输出。 需要注意的是,虽然单例模式在很多情况下...

    Java双重检查加锁单例模式的详解

    "Java双重检查加锁单例模式的详解" Java双重检查加锁单例模式是一种常用的单例模式实现方法,但是在多线程环境下,它存在一些问题。在这篇文章中,我们将探讨Java双重检查加锁单例模式的详解,包括它的优点和缺点,...

    javascript单例模式的简单实现方法

    在JavaScript编程中,单例模式是一种常见的设计模式,它的核心思想是确保一个类在整个应用程序中只存在一个实例,并提供一个全局访问点。这种模式在管理共享资源、避免多个实例间的同步问题以及优化性能等方面有着...

    JAVA中常用的设计模式:单例模式,工厂模式,观察者模式

    在Java中,单例模式的主要目的是确保在整个应用程序中,对于某个类,只有一个实例存在,并提供一个全局访问点。这样做可以有效地控制资源的使用,减少内存消耗,并实现线程安全的数据共享。常见的单例实现方式有懒汉...

    java之设计模式--各种设计模式解析

    单例模式可以和观察者模式一起使用,创建一个全局的事件发布中心。 在使用框架进行开发时,理解框架的运作原理和设计模式是至关重要的。框架提供了基础架构,减少了重复劳动,但同时也要求开发者对框架的工作机制...

    设计模式大全

    在这个“设计模式大全”中,我们主要关注两种被广泛使用的模式:单例模式和工厂模式。 首先,让我们深入了解一下单例模式。单例模式是一种创建型设计模式,它保证一个类只有一个实例,并提供一个全局访问点。这种...

    设计模式(包含5个设计模式)含源代码报告.zip

    在给定的压缩包文件中,包含了五个重要的设计模式,它们分别是单例模式、工厂方法模式、观察者模式、外观模式和代理模式。每个模式都有其独特的应用场景和优势,下面将对这些模式进行详细讲解。 1. 单例模式...

    常用设计模式demo代码-design.rar

    下面我们将深入探讨标题和描述中提到的四种设计模式:单例模式、工厂模式、观察者模式以及模板模式。 1. **单例模式**: 单例模式是一种限制类实例化次数为一次的设计模式,确保在整个应用程序中只有一个实例存在...

    Jjava常用设计模式

    在这个Java常用设计模式的文档中,我们将深入探讨以下几种模式:单例模式、工厂模式、策略模式以及观察者模式。 **单例模式**是一种限制类实例化次数的模式,确保一个类只有一个实例,并提供一个全局访问点。在Java...

    java常用设计模式

    在Java开发中,有几个常见的设计模式经常被应用,包括工厂模式、工厂方法模式、单例模式、外观(Facade)模式、观察者(Observer)模式以及桥接(Bridge)模式。 1. **单例模式**: - 单例模式确保一个类只有一个...

    java设计模式

    7.2 单例模式的定义 7.3 单例模式的应用 7.4 单例模式的扩展 7.5 最佳实践 第8章 工厂方法模式 8.1 女娲造人的故事 8.2 工厂方法模式的定义 8.3 工厂方法模式的应用 8.3.1 工厂方法模式的优点 8.3.2 工厂方法模式的...

    as3 设计模式 单件模式 源码

    此外,AS3中的单例模式还可以应用于事件监听和发布,以及在不同组件间共享数据。例如,一个负责管理所有UI组件状态的`StateManager`可以作为单例存在,这样任何组件都可以通过单例获取或更改状态,而无需直接相互...

    Head First 设计模式(中文完整版+附书源码)

    书中通过“饿汉式”和“懒汉式”两种实现方式来解释单例模式,并强调线程安全问题。 2. **工厂模式**:工厂模式是创建型设计模式之一,它提供了一种创建对象的最佳方式。在工厂模式中,当客户端请求创建一个产品...

    设计模式demmo示例

    在多线程环境中,单例模式确保了线程安全。cmd文件中可能包含一个实现单例模式的类,它的构造函数是私有的,只有一个静态方法可以返回该类的唯一实例。 3. 观察者模式(Observer Pattern):观察者模式是一种行为...

    《设计模式》中文版

    在多线程环境中,单例模式需要特别注意线程安全问题,通常通过双重检查锁定(Double-Check Locking)或静态内部类实现线程安全的单例。 二、工厂模式(Factory) 工厂模式提供了一种创建对象的最佳方式,它隐藏了...

    设计模式实验报告.rar

    2. **单例模式**:单例模式确保一个类只有一个实例,并提供全局访问点。这在资源管理或配置对象等场景中非常有用。报告中会介绍如何防止多次实例化,以及如何确保线程安全的单例实现。 3. **迭代器模式**:迭代器...

    java设计模式高清教程

    比如,在使用单例模式时,可能会讨论线程安全问题和双重检查锁定(Double-Check Locking);在介绍装饰器模式时,可能会讲解如何动态地增加或改变对象功能,以及与继承的比较;在探讨观察者模式时,会讲解事件驱动...

    深入浅出设计模式-中文版

    在多线程环境中,单例模式需要特别处理以保证线程安全。书中会通过实例演示如何创建一个线程安全的单例,以及单例模式在系统管理对象如缓存、日志记录器中的应用。 2. **工厂模式**:工厂模式是对象创建型模式,...

Global site tag (gtag.js) - Google Analytics