一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java兩種單例模式用法分析

java兩種單例模式用法分析

2020-06-06 14:03sir JAVA教程

這篇文章主要介紹了java兩種單例模式用法,結合實例形式對比分析了java實現單例模式的兩種常見技巧,需要的朋友可以參考下

本文實例講述了java兩種單例模式用法。分享給大家供大家參考,具體如下:

按照加載方式的不同,單例模式有兩種實現:

private:只能在同一個類中使用
static:該類是類方法,不能調用實例方法。/類全局變量
final:方法或成員變量不能被修飾

1、餓漢式

?
1
2
3
4
5
6
7
public class EagerSigleton{
private static final EagerSigleton instance=new EagerSigleton();
private EagerSigleton(){}////私有構造方法
public EagerSigleton getInstance(){//靜態工廠方法
return instance;
}
}

2、懶漢式

?
1
2
3
4
5
6
7
8
9
10
public class LazySigleton{
private static final LazySigleton instance=null;
private LazySigleton(){}//私有構造函數
public synchronized LazySigleton getInstance(){//靜態工廠方法,注意這里的synchronized
if(instance==null){
instance=new LazySigleton();
}
return instance;
}
}

分析對比:

相同點:

單例模式屬于創建模式,保證在同一個jvm中僅僅存在該類的一個實例。在上面兩種的單例模式中,可以看出:

① 兩種方式的構造函數都是私有的。
② 對外接口都是工廠方法。

不同點:

餓漢式是在類裝載時直接得到該類的實例,可以說式前期綁定的。而懶漢式在類加載時并沒有指向具體的某個對象。而是當調用工廠方法后才被實例化。因此,前者速度快,后者速度慢。但后者可以加載其他的類,(也就是動態擴展)靈活性高。

希望本文所述對大家java程序設計有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 大乳女子一级毛片 | 成人性生交大片免费看软件 | 久久精品热只有精品 | 大东北chinesexxxx露脸 | 亚洲激情 欧美 | 美女视频一区二区三区在线 | 欧美亚洲韩国 | 日韩免费视频播播 | 性色欲情网站IWWW | 亚洲欧美精品一区天堂久久 | 天堂在线观看中文字幕 | 亚洲国产精品无圣光一区二区 | 蜜桃视频一区二区 | 亚洲日本在线观看网址 | 国产成人一区二区三区影院免费 | 国产欧美一区二区三区免费 | 欧美视频在线一区 | 国产亚洲福利精品一区二区 | 男生和女生艹逼 | 免费高清特黄a 大片 | 午夜一个人在线观看完整版 | 久久免费看少妇高潮A片特爽 | 特黄a大片免费视频 | 国产精品免费_区二区三区观看 | 亚洲视频在线观看地址 | 欧美日韩高清完整版在线观看免费 | 美女黄金大片视频免费看 | 色综合天天综合网看在线影院 | 国产hd老太婆 | 喜欢老头吃我奶躁我的动图 | 国产91在线免费 | 操破苍穹小说 | 高h短篇辣肉各种姿势bl | 91亚洲精品第一综合不卡播放 | 无码国产成人777爽死在线观看 | 欧美日韩一级视频 | 天堂欧美 | 精品国产一区二区三区久久久狼 | 国产福利在线免费观看 | 91九色麻豆 | 国产在线99 |