今天学了单例,贴出来大家共享下,哈哈。
Singleton 模式的宗旨在于确保某个类只有一个实例,别且为之提供一个全局访问点。为了防止其他工作人员实例化我们的类,
可以为该类创建唯一一个构造器,并将构造器的可见设置为私有。值得注意的是,如果我们创建了其他的非私有的构造器,或者根本没有为该类提
供构造器,那么其他人员还是能实例化我们的类。 如果不希望提前创建单例对象,我们可以等到第一次使用该单例对象的时候在创建它,即
通常单例模式在Java语言中,有两种构建方式:
懒汉方式:指全局的单例实例在第一次被使用时构建。延迟初始化。
饿汉方式:指全局的单例实例在类装载时构建。 急切初始化。
1,饿汉式单例类
public class Singleton1 {
private Singleton1() {
}
// 在自己内部定义自己一个实例.
// 注意这是private 只供内部调用
private static Singleton1 instance = new Singleton1();
/** *//**
* 这里提供了一个供外部访问本class的静态方法,可以直接访问
* @return
*/
public static Singleton1 getInstance() {
return instance;
}
}
2,懒汉式单例类
public class Singleton2 {
private static Singleton2 instance = null;
/** *//**
* 这个方法比上面有所改进,不用每次都进行生成对象,只是第一次
* 使用时生成实例,提高了效率!
* @return
*/
public static Singleton2 getInstance() {
if (instance == null)
instance = new Singleton2();
return instance;
}
}
分享到:
相关推荐
一个简单的java工程,包含注释,一目了然,其中包含了单例模式的所有实现方式,懒汉式,饿汉式,双重校验,枚举,静态内部类等方式实现单例。
Java 单例模式 懒汉模式 //懒汉式 多线程中不可以保证是一个对象
Java单例模式,其中:单例模式分三种:懒汉式单例、饿汉式单例、登记式单例三种
详细讲解了Java单例模式的几种实现方式,并有详细的示例配合讲解.
作为对象的创建模式, 单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 PPT详细了单例模式的实现和使用场景
java单例模式的例子java单例模式的例子java单例模式的例子
源码 博文链接:https://tianlihu.iteye.com/blog/747737
Java单例模式Java单例模式Java单例模式Java单例模式
java单例模式及实现
Java设计模式-单例模式(懒汉和恶汉)
这段代码实现了一个简单的日志记录器Logger,其中使用了Java的单例模式。在类的构造方法中,首先定义...这个简单的示例代码展示了如何使用Java单例模式来实现一个日志记录器的简单功能,方便了对日志数据的管理和记录。
java单例模式代码实例
java单例模式连接数据库源码.可以直接引用只需加入相应的mysql 或 oracle的驱动,修改源码的连接地址用户名及密码。
详解JAVA单例模式及多种实现
java单例模式
代码中演示了Java设计模式中的单例模式,其中包括饿汉单例模式,懒汉单例模式以及序列化饭序列化单例模式。在实际的开发中,可以直接借鉴使用。
非常详细的Java单例模式讲解的文档,请求通过,已经上传过一次了
【ASP.NET编程知识】java 单例模式(饿汉模式与懒汉模式).docx