单例模式
来源:互联网 发布:cpda数据分析师含金量 编辑:程序博客网 时间:2024/05/22 09:47
单例模式
定义:确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。
有以下几个要素:
- 私有的构造方法
- 指向自己实例的私有静态引用
- 以自己实例为返回值的静态的公有的方法
/** ** 饿汉模式 ** 在单例类被加载时候,就实例化一个对象交给自己的引用 **/public class Singleton { //私有静态引用 private static Singleton singleton = new Singleton(); //私有构造 private Singleton(){ } //公开静态方法返回自己的实例 public static Singleton getInstance(){ return singleton; } }
/** ** 懒汉模式 ** 调用取得实例方法的时候才会实例化对象 **/public class Singleton { private static Singleton singleton; private Singleton(){ } public static synchronized Singleton getInstance(){ if(singleton==null){ singleton = new Singleton(); } return singleton; } }
一个JVM中会出现多个单例吗?
Class c = Class.forName(Singleton.class.getName());Construct ct = c.getDeclaredConstructor();ct.getAccessible(true);Singleton singleton = (Singleton)ct.newInstance();
注:单例模式因为其构造方法是私有的,所以它是不可以被继承的,但是其他很多单例模式是可以继承的,例如登记式单例。
0 0
- 单例、单例模式
- 单例模式-多线程单例模式
- 单件模式(单例模式)
- 设计模式------单例模式
- 设计模式------单例模式
- 设计模式-单例模式
- 设计模式 - 单例模式
- 设计模式---单例模式
- 设计模式---单例模式
- PHP模式-单例模式
- 【设计模式】单例模式
- 设计模式-单例模式
- 设计模式----单例模式
- 设计模式--单例模式
- 设计模式-单例模式
- 单例模式(单子模式)
- 设计模式-单例模式
- [设计模式] 单例模式
- 【py交易】算法竞赛入门经典6.1.2 铁轨python
- Maven实战指南 02
- ≪统计学习精要(The Elements of Statistical Learning)≫课堂笔记(二)
- 统计字母出现的次数
- 让iPhone不能自动下载系统更新的一个办法
- 单例模式
- 图片轮播
- 设计冲刺工坊第四期——百格活动
- Java异常之try,catch,finally,throw,throws
- Redis在Mac下的安装与使用方法
- C语言——贪食蛇简单实现
- 加盐密码哈希:如何正确使用
- ≪统计学习精要(The Elements of Statistical Learning)≫课堂笔记(三)
- 27 leetcode - Remove Element