开发工具与关键技术: MyEclipse 10、Java语法
作者:邓婵
撰写时间:2019年 5月 23日
单例模式主要是保证一个类在内存中对象的唯一性。
比如:多程序读取一个配置文件时,建议配置文件封装成对象。会方便操作其中数据,又要保证多个程序读到的 是同一个配置文件对象,就需要该配置文件对象在内存中是唯一的。
单例模式适用于:
- 需要生成唯一序列的环境。
- 需要频繁实例化然后销毁的对象。
- 创建对象时耗时过多或者耗资源过多,但又经常用到的对象。
- 方便资源相互通信的环境。
一、饿汉式单例:当我一启动这个类的时候,它就把自身实例化出来。
特点:线程安全,调用效率高,但是不能延时加载。
步骤:1、私有化构造器,使得外部无法调用2.实例化这个类,也就是实例自身,隐藏的静态的自身的一个实例3.创建静态工厂方法,让外部可以获取实例。
相关代码如图下:
二、懒汉式单例:
特点:线程安全,调用效率不高,但是能延时加载。
步骤:1.私有化构造器2.创建一个私有的静态的实例来存放自身,但并不实例出来3.创建静态工厂方法,让外部可以获取实例。
相关代码如图下所示: