Java基础 | Java单例模型 | 06
2021/8/19 11:06:29
本文主要是介绍Java基础 | Java单例模型 | 06,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
目录- 设计模式概述
- 单例模式的定义和作用
- 饿汉式的代码实现
- 懒汉式的代码实现
- 饿汉式 VS 懒汉式
- 单例模式的特点及适用场景
- 小结
设计模式概述
设计模式:是一种代码的总结,是软件开发人员在软件开发过程中面临的一般问题的解决方案。
- 反复使用
- 经过分类编目
- 代码设计经验
- 多数人知晓
下面是分类的23种设计模式。
单例模式的定义和作用
单例模式
- 目的 使得类的一个对象称为该类系统种的唯一实例
- 定义 一个类有且仅有一个实例,并且自行实例化向整个系统提供(也就是自行创建实例,并提供给外部使用)
单例模式可以分为懒汉式和饿汉式。
懒汉式就是创建对象时比较懒,先不急着创建对象,在需要加载配置文件的时候再去创建。
饿汉式就是在系统初始化的时候我们已经把对象创建好了,需要用的时候直接拿过来用就好了。
饿汉式的代码实现
package com.imooc.singleton; //饿汉式:创建对象实例的时候直接初始化 空间换时间 public class SingletonOne { // 1、创建类中私有构造 private SingletonOne() { } // 2、创建该类型的私有静态实例 private static SingletonOne instance = new SingletonOne(); // 3、创建公有静态方法返回静态实例对象 public static SingletonOne getInstance() { return instance; } }
测试代码表示两个对象getInstance()的是同一个对象。
懒汉式的代码实现
package com.imooc.singleton; //懒汉式:类内实例对象创建时并不直接初始化,直到第一次调用get方法时,才完成初始化操作 //时间换空间 public class SingletonTwo { //1、创建私有构造方法 private SingletonTwo(){ } //2、创建静态的该类实例对象 private static SingletonTwo instance=null; //3、创建开放的静态方法提供实例对象 public static SingletonTwo getInstance(){ if(instance==null) instance=new SingletonTwo(); return instance; } }
饿汉式 VS 懒汉式
单例模式的特点及适用场景
小结
什么是设计模式?
设计模式:是一种代码的总结,是软件开发人员在软件开发过程中面临的一般问题的解决方案。 * 反复使用 * 经过分类编目 * 代码设计经验 * 多数人知晓
单例模式
单例模式 * 目的 使得类的一个对象称为该类系统种的唯一实例 * 定义 一个类有且仅有一个实例,并且自行实例化向整个系统提供(也就是自行创建实例,并提供给外部使用) 实现 * 只提供私有的构造方法 * 含有一个该类的静态私有对象 * 提供一个静态的公有的方法用于创建、获取静态私有对象 单例模式可以分为懒汉式和饿汉式。 懒汉式就是创建对象时比较懒,先不急着创建对象,在需要加载配置文件的时候再去创建。 饿汉式就是在系统初始化的时候我们已经把对象创建好了,需要用的时候直接拿过来用就好了。
这篇关于Java基础 | Java单例模型 | 06的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26Mybatis官方生成器资料详解与应用教程
- 2024-11-26Mybatis一级缓存资料详解与实战教程
- 2024-11-26Mybatis一级缓存资料详解:新手快速入门
- 2024-11-26SpringBoot3+JDK17搭建后端资料详尽教程
- 2024-11-26Springboot单体架构搭建资料:新手入门教程
- 2024-11-26Springboot单体架构搭建资料详解与实战教程
- 2024-11-26Springboot框架资料:新手入门教程
- 2024-11-26Springboot企业级开发资料入门教程
- 2024-11-26SpringBoot企业级开发资料详解与实战教程
- 2024-11-26Springboot微服务资料:新手入门全攻略