1.餓漢式
//只有內部類可以爲static。
public class SingIn{
//在自己內部定義自己的一個實例,只供內部調用
private static final SingIn instance = new SingIn();
private SingIn(){
}
}
//這裏提供了一個供外部訪問本class的靜態方法,可以直接訪問
public static SingIn getInstance(){
return instance;
}
2.懶漢式
private volatile static Singleton mSingleton = null;
private Singleton () {}
public static Singleton getInstance() {
if (mSingleton == null) {
synchronized (Singleton.class) {
if (mSingleton == null) {
mSingleton = new Singleton();
}
}
}
return mSingleton;
}