设计模式 - 单例模式

来源:互联网 发布:java 异常处理 编辑:程序博客网 时间:2024/06/16 20:21

1. 定义:

单例模式:核心结构中只包含一个被称为单例的特殊类


2.使用场景:

我们在程序开发的时候,有些情况我们只需要程序一个对象,且必须是一个对象去完成一项任务时就应该使用单例模式


3. 具体应用:

常见的单例模式分为懒汉模式、饿汉模式。


3.1 饿汉模式

package com.dcz.singleton;/** * 单例模式 - 饿汉模式 * @author Administrator */public class Singleton {// 创建一个静态的单例对象private static Singleton instance = new Singleton();// 构造函数私有化,避免外界通过NEW创建对象private Singleton(){}// 创建静态获取实例方法public static Singleton getInstace(){return instance;}}


我们在创建静态单例对象的时候使用了两个修饰符private和static ,这使我们Singleton这个类在加载的时候就会实例化一个对象共方法调用,我们称之为饿汉模式。

3.2 懒汉模式

package com.dcz.singleton;/** * 设计模式 - 懒汉模式 * @author Administrator */public class Singleton2 {// 构造函数私有化private Singleton2(){}// 创建唯一的类实例private static Singleton2 instance = null;// 创建静态获取类实例方法 public static Singleton2 getInstance(){if(null != instance){return instance;}synchronized (Singleton2.class) {if(null == instance){instance = new Singleton2();}}return instance;}}

在创建唯一的类实例的时候我们声明为null,在程序真正使用的时候我们采取获取实例,我们称之为懒汉模式。

0 0
原创粉丝点击