夢幻之旅
DEBUG - 天道酬勤
::
首頁
::
新隨筆
::
聯系
::
聚合
::
管理
::
671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks
<
2011年7月
>
日
一
二
三
四
五
六
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
公告
本博客中未注原創的文章均為轉載,對轉載內容可能做了些修改和增加圖片注釋,如果侵犯了您的版權,或沒有注明原作者,請諒解
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(21)
給我留言
查看公開留言
查看私人留言
隨筆分類
(644)
Android(10)
(rss)
ANT(4)
(rss)
C#(10)
(rss)
C/C++(16)
(rss)
CSS(3)
(rss)
DataBase(119)
(rss)
DB-DailyMmaintenance(16)
(rss)
Design Patterns(27)
(rss)
english
(rss)
Exceptions(7)
(rss)
EXT(39)
(rss)
FLASH(9)
(rss)
Hardware(20)
(rss)
Hibernate(13)
(rss)
Html(23)
(rss)
Java(143)
(rss)
java Net(10)
(rss)
JavaScript(39)
(rss)
Linux(26)
(rss)
php(5)
(rss)
Regular Exp(3)
(rss)
Spring(17)
(rss)
Struts(12)
(rss)
TOOL(43)
(rss)
VB/VBA/VBS(5)
(rss)
webservice(9)
(rss)
XML(2)
(rss)
我的夢幻旅途(14)
(rss)
隨筆檔案
(669)
2017年9月 (4)
2016年10月 (1)
2015年6月 (1)
2015年4月 (2)
2015年1月 (1)
2014年8月 (2)
2014年7月 (9)
2014年6月 (1)
2014年5月 (2)
2014年4月 (3)
2014年3月 (3)
2013年10月 (4)
2013年9月 (8)
2013年8月 (4)
2013年6月 (3)
2013年5月 (4)
2013年4月 (7)
2013年3月 (1)
2013年1月 (3)
2012年12月 (4)
2012年11月 (1)
2012年10月 (1)
2012年9月 (4)
2012年8月 (1)
2012年7月 (2)
2012年6月 (1)
2012年5月 (4)
2012年4月 (2)
2012年3月 (1)
2012年2月 (4)
2012年1月 (6)
2011年12月 (10)
2011年11月 (7)
2011年10月 (6)
2011年9月 (37)
2011年8月 (34)
2011年7月 (44)
2011年6月 (10)
2011年5月 (5)
2011年4月 (3)
2011年3月 (1)
2011年2月 (1)
2011年1月 (18)
2010年12月 (9)
2010年11月 (13)
2010年10月 (17)
2010年9月 (2)
2010年8月 (10)
2010年7月 (10)
2010年6月 (5)
2010年5月 (8)
2010年4月 (9)
2010年3月 (11)
2010年2月 (3)
2010年1月 (8)
2009年12月 (6)
2009年11月 (10)
2009年10月 (5)
2009年9月 (1)
2009年8月 (18)
2009年7月 (6)
2009年6月 (2)
2009年5月 (1)
2009年4月 (4)
2009年3月 (6)
2009年2月 (5)
2009年1月 (3)
2008年12月 (13)
2008年11月 (13)
2008年10月 (30)
2008年9月 (9)
2008年8月 (24)
2008年7月 (17)
2008年6月 (15)
2008年5月 (16)
2008年4月 (15)
2008年3月 (19)
2008年2月 (3)
2008年1月 (20)
2007年12月 (24)
2007年11月 (9)
文章檔案
(6)
2008年4月 (1)
2008年3月 (1)
2008年1月 (2)
2007年11月 (2)
最新隨筆
1.?PP代碼生成器(四) 使用解決方案生成代碼
2.? PP代碼生成器(三) 設計freemarker模板, 創建解決方案
3.? PP代碼生成器(二) 解決方案, 生成任務, 輔助設計面板
4.? PP代碼生成器(一) 簡介, 下載, 運行
5.?PP持久層代碼生成器
6.?比較好的博客
7.?系統集成項目管理工程師
8.?軟件公司項目經理崗位職責
9.?聯想筆記本 顯示屏 鍵盤失靈 釋放靜電
10.?eclipse maven
積分與排名
積分 - 958986
排名 - 37
最新評論
1.?re: Myeclipse 快捷鍵大全(絕對全)
crl+向右箭頭(輸入法有問題打不出來)移到下一個參數的位置,然后crl+shift+向右箭頭 選中該位置的參數即可
--紅領巾
2.?re: Log4j基本使用方法
555
--555
3.?re: Myeclipse 快捷鍵大全(絕對全)[未登錄]
很不錯,謝謝
--銀狐
4.?re: Flex 表單
是誰這么無聊~嗚~~~
--HUIKK
5.?re: Spring AfterReturning 異常
具體是什么意思啊
--dingli
閱讀排行榜
1.?Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream(70028)
2.?log4j.properties 使用說明(42078)
3.?Myeclipse 快捷鍵大全(絕對全)(32724)
4.?TNSNAMES.ORA 配置(24392)
5.?oracle 樹狀查詢(21359)
評論排行榜
1.?Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream(53)
2.?JMail 異常: java.lang.NoClassDefFoundError: javax/activation/DataSource(21)
3.?javax.mail.MessagingException: 530 5.7.0 Must issue a STARTTLS command first(14)
4.?java 讀取 excel 2003 或 excel 2007(14)
5.?java.lang.UnsupportedClassVersionError: Bad version number in .class file(8)
[原創]設計模型探索A-singleton pattern之唯我獨尊
1.在何時使用:
在某些情況下,我們只需要一個類只能實例化一個對象,在這種情況下,可以使用單件.
2.uml類圖
3.使用單例模式的好處.
單類的唯一實例由單件類本控制的,所以可以很好地控制只有一個實現.
使用Singleton的好處還在于可以節省內存因為它限制了實例的個數,有利于Java垃圾回收(garbage collection).
4.例子
1).餓漢式單件,
/** */
/**
* <ul>
* <li>Title:[SingletomA]</li>
* <li>Description: [單例]</li>
* <li>Copyright 2009 Upengs Co., Ltd.</li>
* <li>All right reserved.</li>
* <li>Created by [Huyvanpull] [2011-7-24]</li>
* <li>Midified by [modifier] [modified time]</li>
* </ul>
*
*
@version
1.0
*/
public
class
SingletomA
{
private
static
SingletomA singletom
=
new
SingletomA();
private
SingletomA()
{}
public
static
SingletomA getInstance()
{
return
singletom;
}
}
2). 懶漢式單件
/** */
/**
* <ul>
* <li>Title:[SingletomB]</li>
* <li>Description: [懶漢式單態]</li>
* <li>Copyright 2009 Upengs Co., Ltd.</li>
* <li>All right reserved.</li>
* <li>Created by [Huyvanpull] [2011-7-24]</li>
* <li>Midified by [modifier] [modified time]</li>
* </ul>
*
@version
1.0
*/
public
class
SingletomB
{
private
static
SingletomB singletom;
private
SingletomB()
{}
public
static
SingletomB getInstance()
{
if
(singletom
==
null
)
{
singletom
=
new
SingletomB();
}
return
singletom;
}
}
這個單例模式是不安全的,為什么說呢 ?因為沒考慮多線程,如下情況
Thread 1 調用getInstance() 方法,并且判斷instance是null,然後進入if模塊,在實例化instance之前,Thread 2搶占了Thread 1的cpu。Thread 2 調用getInstance() 方法,并且判斷instance是null,然後進入if模塊,Thread 2 實例化instance 完成,返回Thread 1 再次實例化instance
這個單例已經不在是單例
3).線程安全式單態
/** */
/**
* <ul>
* <li>Title:[SingletomB]</li>
* <li>Description: [懶漢式單態]</li>
* <li>Copyright 2009 Upengs Co., Ltd.</li>
* <li>All right reserved.</li>
* <li>Created by [Huyvanpull] [2011-7-24]</li>
* <li>Midified by [modifier] [modified time]</li>
* </ul>
*
@version
1.0
*/
public
class
SingletomB
{
private
static
SingletomB singletom;
private
SingletomB()
{}
public
static
synchronized
SingletomB getInstance()
{
if
(singletom
==
null
)
{
singletom
=
new
SingletomB();
}
return
singletom;
}
}
采用同步來解決,這種方式解決了問題,但是仔細分析正常的情況下只有第一次時候,進入對象的實例化,須要同步,其它時候都是直接返回已經實例化好的instance不須要同步,大家都知到在一個多線程的程序中,如果同步的消耗是很大的,很容易造成瓶頸.
4.改進型
利用Double-checked locking 兩次同步,中間變量,解決上邊的問題。
/** */
/**
* <ul>
* <li>Title:[SingletomB]</li>
* <li>Description: [懶漢式單態]</li>
* <li>Copyright 2009 Upengs Co., Ltd.</li>
* <li>All right reserved.</li>
* <li>Created by [Huyvanpull] [2011-7-24]</li>
* <li>Midified by [modifier] [modified time]</li>
* </ul>
*
*
@version
1.0
*/
public
class
SingletomB
{
private
static
SingletomB singletom;
private
SingletomB()
{}
public
static
SingletomB getInstance()
{
if
(singletom
==
null
)
{
synchronized
(SingletomB.
class
)
{
if
(singletom
==
null
)
singletom
=
new
SingletomB();
}
}
return
singletom;
}
}
posted on 2011-07-24 15:18
HUIKK
閱讀(233)
評論(0)
編輯
收藏
所屬分類:
Design Patterns
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
相關文章:
[原創]設計模型探索S-GoF,設計模式的分類
[原創]設計模型探索R-mediator parttern之月下老人
[原創]設計模型探索Q-bridge parttern之橋歸橋路歸路
[原創]設計模型探索P-template method parttern之死模活樣
[原創]設計模型探索O2-proxy parttern之桃代李疆
[原創]設計模型探索O1-proxy parttern之桃代李疆
[原創]設計模型探索N -flyweight parttern之有福同享
[原創]設計模型探索M-state parttern之各有千秋
[原創]設計模型探索L-composite parttern之玉樹臨風
[原創]設計模型探索K-builder parttern之各施其職
Powered by:
BlogJava
Copyright © HUIKK
主站蜘蛛池模板:
一区二区在线视频免费观看
|
国产成人精品免费视
|
久久精品国产亚洲香蕉
|
av免费不卡国产观看
|
亚洲JIZZJIZZ妇女
|
亚洲熟女少妇一区二区
|
亚洲美女视频免费
|
国产91成人精品亚洲精品
|
欧洲亚洲国产清在高
|
最近2019中文字幕mv免费看
|
a级毛片免费观看网站
|
亚洲成a人片在线观看播放
|
国产成人免费a在线视频色戒
|
中文字幕av无码不卡免费
|
亚洲狠狠狠一区二区三区
|
国产乱弄免费视频
|
久久国产乱子免费精品
|
精品国产亚洲AV麻豆
|
亚洲一区二区三区四区在线观看
|
免费无码不卡视频在线观看
|
在线成人精品国产区免费
|
亚洲Av永久无码精品黑人
|
久久精品国产亚洲av麻豆
|
亚洲电影日韩精品
|
18禁止观看免费私人影院
|
伊人免费在线观看
|
亚洲丰满熟女一区二区哦
|
久久亚洲中文字幕精品有坂深雪
|
国产99视频精品免费视频7
|
18女人腿打开无遮掩免费
|
中文字幕在线免费视频
|
欧美激情综合亚洲一二区
|
亚洲国产午夜精品理论片
|
亚洲人色婷婷成人网站在线观看
|
精品免费国产一区二区三区
|
2021精品国产品免费观看
|
a级毛片视频免费观看
|
日韩免费高清一级毛片
|
亚洲日韩精品无码AV海量
|
亚洲理论片在线观看
|
亚洲AV无码欧洲AV无码网站
|