设计模式之单例模式
单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例。
饿汉式 VS 懒汉式
- 饿汉式
//测试
public class SingleTest {
public static void main(String[] args) {
Single sin = Single.getInstance();
Single sin1 = Single.getInstance();
System.out.println(sin == sin1);
}
}
//饿汉式
class Single{
//私有化构造器
private Single(){
}
//内部创建类的对象,此对象也要为静态的
private static Single instance =new Single();
//提供公共的静态方法,返回类的对象
public static Single getInstance() {
return instance;
}
}
- 懒汉式
//测试
public class SingleTest1 {
public static void main(String[] args) {
Order ord = Order.getInstance();
Order ord1 = Order.getInstance();
System.out.println(ord == ord1);
}
}
//懒汉式
class Order{
//私有化类的构造器
private Order() {
}
//声明当前类对象,没有初始化
//此对象声明为static的
private static Order instance = null;
//声明public static的返回当前类对象的方法
public static Order getInstance() {
if(instance == null) {
instance = new Order();
}
return instance;
}
}