黑马程序员——单例设计模式
来源:互联网 发布:视频捕捉软件 编辑:程序博客网 时间:2024/06/07 00:41
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
该实现方式称为“饿汉式”,代码简洁,是开发中最常用的单例实现方式。
该实现方式称为“懒汉式”,是单例的另一种实现方式,开发中很少用。
单例模式
单例模式,顾名思义,当需要保证某个类只能有一个实例时,就要使用单例。
如何保证类在内存中只有一个对象:
1.控制类的创建,不让其他类来创建本类的对象。即自定义私有构造函数。
2.在本类中定义一个本类的对象。
3.提供公共的访问方式,将自己创建的对象提供出去。
实现方式:
class Singleton{//1.私有构造器private Singleton(){}//2.创建本类对象private static Singleton s = new Singleton();//3.对外提供公共访问方法public static Singleton getInstance(){return s;}}
该实现方式称为“饿汉式”,代码简洁,是开发中最常用的单例实现方式。
class Singleton{//1.私有构造器private Singleton(){}//2.声明一个本类的引用,并初始化为nullprivate static Singleton s = null;//3.对外提供公共访问方式public static Singleton getInstance(){//利用双重判断提高效率if(s==null){//同步代码块的使用解决了多线程访问的安全问题synchronized(Singleton.class){if(s==null) s = new Singleton();}}return s;}}
该实现方式称为“懒汉式”,是单例的另一种实现方式,开发中很少用。
两种实现方式的区别
饿汉式是以空间换时间,即首先创建对象,相对于懒汉时来说比较浪费空间,但代码实现简单,节省了时间;
懒汉式是以时间换空间,对象延迟创建,但代码实现繁琐,且多线程访问时容易发生安全隐患。
所以,在实际使用过程中,多数情况使用饿汉式。
0 0
- 黑马程序员—单例设计模式
- 黑马程序员—单例设计模式
- 黑马程序员—单例设计模式
- 黑马程序员--设计模式——单例设计模式
- 黑马程序员————单例设计模式
- 黑马程序员———java 单例设计模式
- 黑马程序员——单例设计模式
- 黑马程序员——单例设计模式
- 黑马程序员——单例设计模式
- 黑马程序员——多线程和单例设计模式
- 黑马程序员——单例设计模式
- 黑马程序员 JAVASE——单例设计模式
- 黑马程序员——单例设计模式
- 黑马程序员——单例设计模式
- 黑马程序员——单例设计模式
- 黑马程序员学习笔记——单例设计模式
- 黑马程序员——单例设计模式
- 黑马程序员——java单例设计模式
- 华为woj字符串最后一个单词的长度
- 用脚本批量执行redis命令
- spark1.3.0__for_hadoop2.4.1编译、安装与初步测试
- 逻辑回归LR的特征为什么要先离散化
- 算法练习五:用两个栈实现队列
- 黑马程序员——单例设计模式
- 1035 Password
- HOJ Train Problem II
- 分治归并——排序
- 解决Android Studio下载更新Android SDK网络异常或无法下载
- leetcode 解题报告 Word Ladder II
- Spring的核心技术(二)---容器简介
- 华为woj图片整理
- EF6 Database First (DbContext) - Change Schema at runtime