`
jiewo
  • 浏览: 47994 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Java单例的5中写法

    博客分类:
  • java
阅读更多
Java5种单例写法。

public class Resource {

	/**
	 * 直接初始化
	 * **/
	private static Resource resource_static = new Resource();
	
	public static Resource getResourceInstanceStatic(){
		return resource_static;
	}
	
	/**
	 * 利用synchronized来实现的线程安全
	 * **/
	private static Resource resource_synchronized = null;
	
	public static synchronized Resource getResourceInstanceSynchronized(){
		if(null==resource_synchronized){
			resource_synchronized = new Resource();
		}
		return resource_synchronized;
	}
	
	/**
	 * 利用JVM本身类加载机制实现的lazy初始化
	 * **/
	private static class ResourceHolder{
		public static Resource resource = new Resource();
	}
	public static Resource getResourceInstanceClass(){		
		return ResourceHolder.resource;
	}
	
	/**
	 * DCL double check locking 
	 * 线程不安全 不推荐
	 * **/
	private static Resource resource_dcl = null;
	
	public static Resource getResourceInstanceDCL(){
		if(null==resource_dcl){
			synchronized(Resource.class){
				if(null==resource_dcl){
					resource_dcl = new Resource();
				}
			}
		}
		return resource_dcl;
	}
	
	/**
	 * 线程不安全 不推荐
	 * **/
	private static Resource resource_unsafe = null;
	
	public static Resource getResourceInstanceUnSafe(){
		if(null==resource_unsafe){
			resource_unsafe = new Resource();
		}
		return resource_unsafe;
	}
}
分享到:
评论

相关推荐

    单例的多种写法和说明比较

    在Java、C#等面向对象语言中,单例模式被广泛应用,尤其是在需要频繁创建和销毁的对象,或者需要全局访问点的情况下。 ### 1. 懒汉模式(Lazy Initialization) 懒汉模式是在第一次需要使用单例时才进行实例化,...

    java单例模式开发的7种写法

    ### Java单例模式开发的七种写法 #### 概述 单例模式是一种常用的软件设计模式,其目的是确保一个类仅有一个实例,并提供一个全局访问点。在Java编程语言中,实现单例模式的方法有很多种,不同的实现方式具有不同的...

    java-单例模式几种写法

    在Java中,实现单例模式有多种方法,每种方法都有其特点和适用场景。以下是对这六种常见单例模式实现方式的详细解释: 1. **饿汉式(静态常量)** 这是最简单的单例实现,它在类加载时就创建了实例,线程安全。 `...

    详解java中的6种单例写法及优缺点

    详解java中的6种单例写法及优缺点 在 Java 中,单例是一种常用的设计模式,它可以确保一个类只有一个实例,并提供一个全局访问点来访问该实例。单例模式可以应用于各种场景,如数据库连接池、日志记录器、线程池等...

    Java设计模式之单例模式的七种写法

    在 Java 中,单例模式的写法有好几种,主要有懒汉式单例、饿汉式单例、登记式单例等。 懒汉式单例是一种常见的单例模式实现方式,它在第一次调用的时候实例化自己。下面是懒汉式单例的四种写法: 1、基本懒汉式...

    【Java面试题】单例的写法

    【Java面试题】单例的写法

    java单例模式详解Java系列2021.pdf

    枚举单例写法简洁,能够避免反射破坏单例的问题,并且它还能够防止反序列化重新创建新的实例。使用枚举实现单例模式时,Java虚拟机会保证枚举类型中的字段只被实例化一次。 在Java的单例模式实现中,内部类也是一个...

    JavaSE单例模式各种写法.doc

    ### JavaSE单例模式的各种实现方法 #### 一、懒汉式(线程不安全) **定义:** 懒汉式单例模式是最简单的实现方式之一,它的特点是第一次被调用时才实例化对象。 **代码示例:** ```java public class ...

    单例模式的七种写法

    单例模式是软件设计模式中的一种经典模式,用于确保一个类只有一个实例,并提供一个全局访问点。这种模式在很多场景下都非常有用,比如控制数据库连接、管理缓存或者全局配置等。下面我们将详细探讨单例模式的七种...

    java单例模式看这一篇就够了

    Java中的单例模式是一种设计模式,它用于保证一个类在整个应用程序中只能有一个实例存在。这样做的目的是为了控制实例化过程,避免多个实例间的资源冲突,同时提供全局访问点。单例模式属于创建型设计模式,它在软件...

    Java:单例模式的七种写法

    5. 在Java中,volatile关键字可以用来保证并发编程中的可见性和有序性,对于实现单例模式尤为重要。 理解并掌握这些单例模式的实现方式,有助于我们在实际开发中根据具体需求选择最合适的单例实现,提升代码的效率...

    Java设计模式单例模式(Singleton)用法解析

    Java设计模式单例模式(Singleton)用法解析 java设计模式单例模式(Singleton)是指确保一个类在任何情况下都绝对只有一个实例,并提供一个全局反访问点。...单例模式在生活中应用也很广泛,JAVA中也有许多应用。

    Tom_20170324_Java设计模式之单例模式的七种写法1

    2、单例类必须自己创建自己的唯一实例 3、单例类必须给所有其他对象提供这一实例 2、资源加载和性能:饿汉式在类创建的同时就实例化一个静态对象出来,不管之后会不会

    关于使用JAVA单例的问题分析

    这个问题由开始使用JACKSON JSON而衍生出来,因为官网上建议将ObjectMapper作为全局变量使用从而提高效率,所以,我们项目里面使用了单例,在使用单例的时候,我们无可厚非的考虑了资源在使用时是否要保证互斥的情况...

Global site tag (gtag.js) - Google Analytics