单例模式 确保一个类只有一个实例,并提供一个全局访问站点。
类图:
1.线程不安全的单例模式
/**
* 单例模式(线程不安全)
*/
public class SingletonTest {
private static SingletonTest instance;
private SingletonTest() {
}
public static SingletonTest getInstance() {
if (instance == null) {
instance = new SingletonTest();
}
return instance;
}
}
2.“懒汉”模式
/**
* 单例模式(线程安全、每次调用都同步getInstance方法,影响效率)
*/
public class SingletonTest {
private static SingletonTest instance;
private SingletonTest() {
}
public static synchronized SingletonTest getInstance() {
if (instance == null) {
instance = new SingletonTest();
}
return instance;
}
}
3.“饿汉”模式
/**
* 单例模式(线程安全、JVM加载类时马上创建实例)
*/
public class SingletonTest {
private static SingletonTest instance = new SingletonTest();
private SingletonTest() {
}
public static SingletonTest getInstance() {
return instance;
}
}
4.双重检查加锁
/**
* 单例模式(线程安全)
*/
public class SingletonTest {
private volatile static SingletonTest instance;
private SingletonTest() {
}
public static SingletonTest getInstance() {
if (instance == null) {
synchronized (SingletonTest.class) {
if(instance == null) {
instance = new SingletonTest();
}
}
}
return instance;
}
}
![点击查看原始大小图片](http://dl2.iteye.com/upload/attachment/0127/7508/1246a1c2-a81c-360f-b760-b60d7fd99d21-thumb.png)
- 大小: 4.6 KB
分享到:
相关推荐
入名所示,该文件为最详细的Java单例模式讲解并附有讲解代码。主要讲了单例模式的几种方法,懒汉模式、饿汉模式、静态内部类模式。着重讲解了懒汉模式下怎么实现线程安全。饿汉模式和静态内部类模式如何设置能够避免...
JAVA设计模式之单例模式(完整版)1[定义].pdf
"设计模式单例模式和工厂模式综合应用"的主题聚焦于两种常用的设计模式:单例模式和工厂模式,并探讨它们如何协同工作来实现高效、灵活的代码结构。这个主题尤其适用于Java编程语言,因为Java的面向对象特性使得设计...
目录 单例模式的概念 单例模式的要点 单例模式类图 单例模式归类 单例模式的应用场景 单例模式解决的问题 单例模式的实现方式 单例模式实现方式对比 单例模式的概念 单例模式,顾名思义就是只有一个实例,并且由它...
Java设计模式-单例模式详解 单例模式是 Java 设计模式中的一种常用的设计模式,旨在保证一个类仅有一个实例,并提供一个访问它的全局访问点。单例模式的目的是为了保证在一个进程中,某个类有且仅有一个实例。 ...
Java设计模式是面向对象编程中的重要概念,它们是软件开发中经过验证的、解决常见问题的最佳实践。在这些模式中,单例模式是最为广泛使用的一种。单例模式确保一个类只有一个实例,并提供一个全局访问点,使得在整个...
Java设计模式之单例模式的七种写法 单例模式是一种常见的设计模式,它确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、打印机的驱动程序对象常...
计算机后端-Java-图解java设计模式037 单例模式JK.avi
单例模式是软件设计模式中的一种经典模式,它保证了类只有一个实例存在,并提供一个全局访问点。在Java等面向对象编程语言中,单例模式常用于管理共享资源,如数据库连接池、线程池或者配置文件等。结合工厂模式,...
计算机后端-Java-图解java设计模式036 单例(.avi
计算机后端-Java-图解java设计模式038 单例模.avi
### Java设计模式——单例模式详解 #### 一、单例模式概述 单例模式是设计模式中的一个重要组成部分,属于创建型模式之一。其主要作用是确保某个类仅有一个实例存在,并提供一个全局访问该实例的方法。这在很多场景...
Java设计模式之单例模式详解 一、单例模式概览 单例模式(Singleton Pattern)是面向对象设计模式中的一种,属于创建型模式。它确保一个类仅有一个实例,并提供一个全局访问点来访问该实例。单例模式的核心在于控制...
计算机后端-Java-图解java设计模式035 单例(静.avi
单例模式是软件设计模式中的一种经典模式,它在Java编程中被广泛使用,尤其是在需要控制实例化过程,或者确保某类只有一个实例时。本文将深入探讨Java中的单例模式,帮助你理解其原理和应用。 单例模式的核心思想是...
计算机后端-Java-图解java设计模式034 单例(DoubleC.avi
计算机后端-Java-图解java设计模式032 单例(线程安.avi
计算机后端-Java-图解java设计模式031 单例(线程不安.avi
计算机后端-Java-图解java设计模式030 单例(静态代码.avi
计算机后端-Java-图解java设计模式029 单例(静态常.avi