public class Singleton2 {
private Singleton2() {}
private static Singleton2 instance;
public static Singleton2 getInstance() {
if (instance == null) {
synchronized (Singleton2.class) {
if (instance == null) {
instance = new Singleton2();}}}
return instance;
}
}
private Singleton2() {}
private static Singleton2 instance;
public static Singleton2 getInstance() {
if (instance == null) {
synchronized (Singleton2.class) {
if (instance == null) {
instance = new Singleton2();}}}
return instance;
}
}
2017-01-09
餓漢模式:類加載的時(shí)候便進(jìn)行了創(chuàng)建...
額...其實(shí)是因?yàn)閟tatic代碼塊的原因
一個(gè)類運(yùn)行加載進(jìn)入內(nèi)存的時(shí)候 首先加載static靜態(tài)代碼塊
可以搜索一下“考查靜態(tài)語句塊、語句塊以及構(gòu)造函數(shù)的執(zhí)行順序”
弄懂了就知道餓漢模式了
BTW:上面搜索的東西是一道Java面試題
額...其實(shí)是因?yàn)閟tatic代碼塊的原因
一個(gè)類運(yùn)行加載進(jìn)入內(nèi)存的時(shí)候 首先加載static靜態(tài)代碼塊
可以搜索一下“考查靜態(tài)語句塊、語句塊以及構(gòu)造函數(shù)的執(zhí)行順序”
弄懂了就知道餓漢模式了
BTW:上面搜索的東西是一道Java面試題
2017-01-03