单例模式:只存在一个实例对象。
注:1、模式创建时:方法用static,为了创建唯一实例,不可调用构造器,因此只能使用静态方法,随类的加载而加载。
1 懒汉式
优点:延迟对象的创建。
缺点:须注意线程安全问题
// 懒汉式
class Bank1 {
private static Bank1 bank = null;
private Bank1() {
}
public static Bank1 getBank1() {
if (bank == null) {
synchronized (Bank.class) {
if (bank == null)
bank = new Bank1();
}
}
return bank;
}
}
2.饿汉式
优点;线程安全。
缺点:加载时间过长。
class Bank {
private static Bank bank;
private static Bank bank1 = new Bank();
private Bank(){}
public static Bank getBank() {
return bank1;
}
}