一葉笑天
雄關漫道真如鐵, 而今邁步從頭越。 從頭越, 蒼山如海, 殘陽如血。
BlogJava
首頁
新隨筆
新文章
聯系
聚合
管理
posts - 73,comments - 7,trackbacks - 0
<
2008年6月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
31
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
1
2
3
4
5
本博客的文章僅供本人學習之用,如果您閱讀后,認為不適合,請默默離開
。 本人不負責連帶責任。
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(4)
給我留言
查看公開留言
查看私人留言
隨筆分類
(65)
Eclipse技術(3)
Hibernate技術
Java EE技術(1)
JAVA技術(29)
Perl技術(2)
Shell技術(6)
Struts技術(3)
個人轉貼(5)
人生感悟(3)
開源技術(12)
網站技術(1)
隨筆檔案
(67)
2011年8月 (1)
2010年3月 (1)
2009年5月 (1)
2009年4月 (3)
2009年3月 (1)
2009年2月 (1)
2009年1月 (3)
2008年12月 (12)
2008年9月 (2)
2008年8月 (11)
2008年7月 (8)
2008年6月 (22)
2005年9月 (1)
鏈接博客
oksonic博客
Struts2
搜索
最新評論
1.?re: 使用AutowiringRequestProcessor整合struts和Spring2.0
1. 這種autowire的注入支持兩種不同的方式,分別是byName和byType,默認是byType。我想這對于絕大多數開發者來說是夠了。
請問怎么配置方式為byName呢?
--AUTOCHECK
2.?re: [轉貼]Spring JTA應用之JOTM配置[未登錄]
請問能夠將dao層的代碼貼出來嗎? 或者直接將源碼掛出來
--111
3.?re: Struts2邊學邊練(3)-Struts2集成Hibernate完成CRUD操作[未登錄]
原微軟大中華區副總出任Teradata大中華區總裁@micheal
--dd
4.?re: Struts2邊學邊練(3)-Struts2集成Hibernate完成CRUD操作[未登錄]
加入你的USER對象要是有100個字段,你的edit頁面怎么處理?
--micheal
5.?re: SCJP-031-055備戰筆記-1.3-Java5中基本數據類型
4:java中的char不屬于整數類型!!!作者是不是搞錯了???
--hdwt
閱讀排行榜
1.?使用Eclipse遠程調試(翻譯)(6006)
2.?[轉貼]Spring JTA應用之Atomikos配置 (4158)
3.?PHPBB3安裝上路(3573)
4.?Maven2新手上路(3243)
5.?Internal error - the selected file is a system file that cannot be modified的解決方法(2879)
評論排行榜
1.?Struts2邊學邊練(3)-Struts2集成Hibernate完成CRUD操作(2)
2.?春(2)
3.?SCJP-031-055備戰筆記-1.3-Java5中基本數據類型(1)
4.?[轉貼]Spring JTA應用之JOTM配置(1)
5.?使用AutowiringRequestProcessor整合struts和Spring2.0(1)
Effective Java (2nd Edition)讀書筆記-Item 3: 使用私有構造函數或者枚舉類型來增強單例屬性
在Jdk1.5之前有兩種方式實現單例。它們都是采用維護私有構造器并且暴露一個static的成員函數來提供訪問單一實例對象。第一種方式是將成員變量聲明為final類型,例如:
//
Singleton with public final field
public
class
Elvis
{
public
static
final
Elvis INSTANCE
=
new
Elvis();
private
Elvis()
{
}
public
void
leaveTheBuilding()
{
}
}
另外一種方式是采用一個static的工廠方法:例如
//
Singleton with static factory
public
class
Elvis
{
private
static
final
Elvis INSTANCE
=
new
Elvis();
private
Elvis()
{
}
public
static
Elvis getInstance()
{
return
INSTANCE; }
public
void
leaveTheBuilding()
{
}
}
public field方式的主要優勢是在于清楚的聲明了指定的類是單例的。
static的工廠方法優勢在于可以靈活設置指定的類應不應該在不改變它的API的前提下是不是一個單例。
為了實現用前面介紹的方式來實現單例的serializable,不能僅僅增加implement Serializable。為了一直保持單例狀態,必須聲明所有的屬性為transient,而且提供一個readResolve方法。否則當一個類反序列化的時候,新的實例將會隨之生成。為了保持Elvis類單例,可以增加下面的函數:
//
readResolve method to preserve singleton property
private
Object readResolve()
{
//
Return the one true Elvis and let the garbage collector
//
take care of the Elvis impersonator.
return
INSTANCE;
}
在1.5中,還可以用另外一種方式實現單例。使用enum來保持類單例:
//
Enum singleton - the preferred approach
public
enum
Elvis
{
INSTANCE;
public
void
leaveTheBuilding()
{
}
}
除了它更簡明,這種方式等同于public屬性方式。免費提供了序列化機制,即使面對尖端的序列化或者反射攻擊,它都提供了堅實的單例。
結論:
這種方式還需要廣泛的采納,
元素級的單例枚舉類型是最好的實現單例的方法。
While this approach has yet to be widely
adopted, a single-element enum type is the best way to implement a singleton.
posted on 2008-06-18 21:49
一葉笑天
閱讀(373)
評論(0)
編輯
收藏
所屬分類:
JAVA技術
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
樹的遍歷(轉貼)
轉貼:java類加載內幕
[轉貼]用Java Socket開發小型服務器收藏
[轉貼]Java調用dos命令
轉貼:全世界所有程序員都會犯的錯誤-蔡學鏞
SCJP-031-055備戰筆記-4.1-Java5中基本類型的轉換
SCJP-031-055備戰筆記-4.4-Java5中引用類型的轉型
SCJP-031-055備戰筆記-4.3-Java5中引用類型的轉換
SCJP-031-055備戰筆記-4.2-Java5中基本類型的轉型
SCJP-031-055備戰筆記-3.5-Java5中的strictfp,synchronized,transient修飾符
Copyright ©2025 一葉笑天 Powered By
博客園
模板提供:
滬江博客
主站蜘蛛池模板:
亚洲欧洲日本国产
|
精品无码一区二区三区亚洲桃色
|
亚洲国产精品人久久
|
久久久久久国产a免费观看不卡
|
亚洲日韩中文字幕无码一区
|
最近新韩国日本免费观看
|
91精品国产亚洲爽啪在线观看
|
人人揉揉香蕉大免费不卡
|
国产精品亚洲片在线观看不卡
|
免费福利在线视频
|
亚洲码在线中文在线观看
|
在线视频精品免费
|
亚洲精品天堂成人片AV在线播放
|
日本大片在线看黄a∨免费
|
精品国产亚洲一区二区三区在线观看
|
又粗又硬又黄又爽的免费视频
|
暖暖免费中文在线日本
|
亚洲日韩一页精品发布
|
97精品免费视频
|
亚洲欧美第一成人网站7777
|
亚洲国产成人爱av在线播放
|
在线观看免费播放av片
|
亚洲sss综合天堂久久久
|
国产成人无码a区在线观看视频免费
|
美女羞羞免费视频网站
|
亚洲精品亚洲人成人网
|
在线看片v免费观看视频777
|
亚洲av无码成人精品区一本二本
|
亚洲精品无码不卡
|
午夜私人影院免费体验区
|
一级特黄aaa大片免费看
|
亚洲国产精品一区
|
黄网址在线永久免费观看
|
一级视频在线免费观看
|
91亚洲国产成人久久精品网站
|
成人免费在线视频
|
中文字幕在线观看免费
|
亚洲一区二区三区91
|
亚洲毛片av日韩av无码
|
AV无码免费永久在线观看
|
又黄又大的激情视频在线观看免费视频社区在线
|