设计模式:来源于建筑行业,解决问题的一种行之有效思想。(23种)
是一种 优秀设计、目的是提高效率。
单例设计模式
解决问题:保证了一个类在内存中只能有一个对象。
如:多程序访问同一个配置文件,希望多程序操作的都是同一个配置文件中的数据。重要的是保证该配置文件对象的唯一性。
实现步骤:
1. 将该类中的构造函数私有化。
2. 在本类中创建一个本类对象。
3. 定义一个方法,返回值类型是本类类型。让其他程序通过该方法就能获取该类对象。
完整例子:
例子1:
/**
* 延时加载模式
* @author DRAGON
*
*/
public class SingleDemo {
private static SingleDemo singleDemo = null;
private SingleDemo() {
}
public static SingleDemo getInstance() {
if (singleDemo == null) {
singleDemo = new SingleDemo();
}
return singleDemo;
}
}
例子2:
package com.dragon.src;
/**
*
* 类加载模式
* @author DRAGON
*
*/
public class SingleDemo {
private static SingleDemo singleDemo = new SingleDemo();
private SingleDemo() {
}
public static SingleDemo getInstance() {
return singleDemo;
}
}
主函数:
public static void main(String[] args) {
SingleDemo s1 = SingleDemo.getInstance();
SingleDemo s2 = SingleDemo.getInstance();
System.out.println(s1 == s2);
}
运行结果:true