Chinese => English
『一只小螞蟻』的專欄
BlogJava
|
首頁(yè)
|
發(fā)新隨筆
|
發(fā)新文章
|
聯(lián)系
|
聚合
|
管理
隨筆:135 文章:0 評(píng)論:250 引用:0
『螞蟻學(xué)模式』之實(shí)例化適配器(Adapter)模式
結(jié)構(gòu)模式
:描述如何將
類
或者
對(duì)象
組合在一起形成更大的結(jié)構(gòu)。
適配器模式
:把一個(gè)類的接口變換成客戶端所期待的另一種接口,從而使原本因接口不匹配而無法在一起工作的兩個(gè)類能夠在一起工作。
使用場(chǎng)合
:
1)系統(tǒng)需要使用現(xiàn)有的類,而此類的接口不符合系統(tǒng)的需要。
2)想要建立一個(gè)可以重復(fù)使用的類,用于與一些彼此之間沒有太大關(guān)聯(lián)的一些類,包括一些可能在將來引進(jìn)的類一起工作。這些源類不一定有很復(fù)雜的接口。
3)(對(duì)對(duì)象的適配器模式而言)在設(shè)計(jì)里,需要改變多個(gè)已有的子類的接口,如果使用類的適配器模式,就要針對(duì)每一個(gè)子類做一個(gè)適配器類,而這不太實(shí)際。
類/對(duì)象的適配器模式:
1. com.cleversoft.designpatterns.adapter.Target.java:
package
?com.cleversoft.designpatterns.adapter;
public
?
interface
?Target?
{
????
public
?
void
?request();
}
2. com.cleversoft.designpatterns.adapter.Adaptee.java:
package
?com.cleversoft.designpatterns.adapter;
public
?
class
?Adaptee?
{
????
public
?
void
?specificRequest()?
{
????????System.out.println(
"
Adaptee:?SpecificRequest
"
);
????}
}
3. com.cleversoft.designpatterns.adapter.ClassAdapter.java:
package
?com.cleversoft.designpatterns.adapter;
public
?
class
?ClassAdapter?
extends
?Adaptee?
implements
?Target?
{
????
public
?
void
?request()?
{
????????specificRequest();
????}
}
4. com.cleversoft.designpatterns.adapter.ObjectAdapter.java:
package
?com.cleversoft.designpatterns.adapter;
public
?
class
?ObjectAdapter?
implements
?Target?
{
????
private
?Adaptee?adaptee;
????
public
?ObjectAdapter(Adaptee?adaptee)?
{
????????
this
.adaptee?
=
?adaptee;
????}
????
public
?
void
?request()?
{
????????adaptee.specificRequest();
????}
}
5. com.cleversoft.designpatterns.adapter.Client.java:
package
?com.cleversoft.designpatterns.adapter;
public
?
class
?Client?
{
????
public
?
static
?
void
?main(String[]?args)?
{
????????System.out.println(
"
Object?Adapter
"
);
????????Adaptee?adaptee?
=
?
new
?Adaptee();
????????ObjectAdapter?objectAdapter?
=
?
new
?ObjectAdapter(adaptee);
????????objectAdapter.request();
????????System.out.println(
"
Class?Adapter
"
);
????????ClassAdapter?classAdapter?
=
?
new
?ClassAdapter();
????????classAdapter.request();
????}
}
參考資料:
1. 《Java與模式》
2. Thinking in Patterns
歡迎大家訪問我的個(gè)人網(wǎng)站
萌萌的IT人
發(fā)表于 2007-01-09 18:47
Thomas
閱讀(425)
評(píng)論(0)
編輯
收藏
所屬分類:
螞蟻學(xué)模式
新用戶注冊(cè)
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關(guān)文章:
『螞蟻學(xué)模式』之實(shí)例化策略(Strategy)模式
『螞蟻學(xué)模式』之實(shí)例化門面(Facade)模式
『螞蟻學(xué)模式』之實(shí)例化代理(Proxy)模式
『螞蟻學(xué)模式』之實(shí)例化裝飾(Decorator)模式
『螞蟻學(xué)模式』之實(shí)例化合成(Composite)模式
『螞蟻學(xué)模式』之實(shí)例化缺省適配器(Default Adapter)模式
『螞蟻學(xué)模式』之實(shí)例化適配器(Adapter)模式
『螞蟻學(xué)模式』之實(shí)例化原型模式
『螞蟻學(xué)模式』之實(shí)例化建造者模式
『螞蟻學(xué)模式』之實(shí)例化單例模式(二)
<
2007年1月
>
日
一
二
三
四
五
六
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
31
1
2
3
4
5
6
7
8
9
10
常用鏈接
我的隨筆
我的評(píng)論
我的參與
最新評(píng)論
留言簿
(9)
給我留言
查看公開留言
查看私人留言
隨筆分類
(138)
Agile(3)
(rss)
AppFuse(1)
(rss)
Apusic OperaMasks(1)
(rss)
Books(1)
(rss)
Business & Finance(1)
(rss)
DDD(2)
(rss)
Design Patterns(1)
(rss)
Eclipse(4)
(rss)
EJB3.0
(rss)
Groovy & Grails
(rss)
Hibernate(3)
(rss)
Internet
(rss)
J2EE核心模式(2)
(rss)
Java ABC(4)
(rss)
Java EE(6)
(rss)
JavaScript & Ajax(2)
(rss)
JBoss Seam(5)
(rss)
JPA(1)
(rss)
JSF(2)
(rss)
Life(15)
(rss)
Open Source(3)
(rss)
Other(40)
(rss)
Portal(1)
(rss)
Pylons學(xué)習(xí)(3)
(rss)
Python(2)
(rss)
Security(2)
(rss)
Spring(3)
(rss)
TDD(3)
(rss)
Writing(1)
(rss)
一周閱讀推薦(3)
(rss)
螞蟻學(xué)模式(23)
(rss)
隨筆檔案
(135)
2007年11月 (9)
2007年10月 (5)
2007年9月 (10)
2007年8月 (13)
2007年7月 (8)
2007年6月 (7)
2007年5月 (10)
2007年4月 (10)
2007年3月 (4)
2007年2月 (5)
2007年1月 (12)
2006年12月 (13)
2006年11月 (7)
2006年10月 (2)
2006年9月 (15)
2006年8月 (4)
2006年7月 (1)
相冊(cè)
Technology
收藏夾
(38)
Design Patterns(3)
(rss)
InfoQ(9)
(rss)
Java(1)
(rss)
JBoss Seam(6)
(rss)
My Articles(11)
(rss)
Reading(8)
(rss)
About me
my "douban" on douban
my "fanfou" on fanfou
my blog on baidu
my bookmarks on del.icio.us
my photos on picasaweb
Blogs
Anders小明的Blog
BlueDavy之技術(shù)Blog
Chris Richardson
gigix
Martin Fowler
Michael Yuan
robbin
夢(mèng)想風(fēng)暴
江南白衣
簡(jiǎn)單就是美!
胡長(zhǎng)城(銀狐999)BLOG
良葛格學(xué)習(xí)筆記
蛟龍居
鍵盤上的舞者
Classmates
碧濤居
Coworkers
一個(gè)基督徒的在世歷程
English
BBC China
普特英語(yǔ)聽力
Friends
BeanSoft
main()
劉玉輝
雙魚瓶
小獻(xiàn)
曹江華
阿蜜果
Java
BlogJava
Blogs Summary
DevX: Java Zone
DZone
Huihoo
IBM developerWorks 中國(guó)
InfoQ
JAVA DEVELOPER'S JOURNAL
javablogs
JavaEye
javapassion.com
JavaWorld
Java站點(diǎn)
JBoss Seam中文站
JCP
Java Community Process
J道
Object Mentor Blog
ONJava
Raible Designs | Java
TSS
Open Source
appfuse
EasyJF
Java開源大全
JBoss Seam
OperaMasks.org
OSGi.org.cn
PicoContainer
projecttrack
Project Track - a JSF/Spring/Hibernate/Acegi example application
Redsaga
SpringSide
最新隨筆
1.?【轉(zhuǎn)載】你的時(shí)間在那里,成就就在那里
2.?Seam能否取代Struts?
3.?【一周閱讀推薦】2007.11.05—2007.11.11
4.?選擇Seam的十大理由
5.?《JBoss Seam:一個(gè)深度集成框架》pdf文件下載
6.?在JBoss AS下部署Seam示例程序
7.?【翻譯】Spring 2.5架構(gòu)圖
8.?【一周閱讀推薦】2007.10.29—2007.11.04
9.?JBoss Seam中文站發(fā)布
10.?web2.0最全的國(guó)外API應(yīng)用集合
11.?【一周閱讀推薦】2007.10.22—2007.10.28
12.?記住,你的兜里只有100塊!
13.?【轉(zhuǎn)載】我最恐懼的事情是競(jìng)爭(zhēng)力的喪失
14.?【翻譯】RIA入門知識(shí)
15.?【翻譯】比較NetBeans 6.0 M10和IntelliJ IDEA 7.0 M1
16.?【轉(zhuǎn)載】Web2.0@China!
17.?【轉(zhuǎn)載】正確地做事與做正確的事同樣重要
18.?【轉(zhuǎn)載】你必須要有一樣拿得出手
19.?極限編程
20.?敏捷軟件開發(fā)
搜索
積分與排名
積分 - 185472
排名 - 311
最新評(píng)論
1.?viagra sale
Hello!
--viagra_sale
2.?generic cialis paypal payment
Hello!
--cialis
3.?re: 【轉(zhuǎn)載】你的時(shí)間在那里,成就就在那里
很多東西也就深明大意了 路就走的更遠(yuǎn)了
--水泵
4.?re: 實(shí)戰(zhàn)struts2——用戶登錄
請(qǐng)問你的web。xml 是怎么寫的
--111222
5.?re: 【翻譯】不使用Spring的5個(gè)理由
在你需要的時(shí)候使用
--haremeat
閱讀排行榜
1.?實(shí)戰(zhàn)struts2——用戶登錄(15018)
2.?實(shí)戰(zhàn)struts2——Hello World(8413)
3.?《JBoss Seam:一個(gè)深度集成框架》pdf文件下載(8075)
4.?極限編程(5727)
5.?【翻譯】Spring 2.5架構(gòu)圖(5333)
評(píng)論排行榜
1.?【翻譯】不使用Spring的5個(gè)理由(27)
2.?J2EE without AJAX——Apusic OperaMasks框架簡(jiǎn)介(16)
3.?《JBoss Seam:一個(gè)深度集成框架》pdf文件下載(15)
4.?【翻譯】Spring 2.5架構(gòu)圖(14)
5.?【轉(zhuǎn)載】你的時(shí)間在那里,成就就在那里(12)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 Thomas
主站蜘蛛池模板:
国产精品亚洲αv天堂无码
|
免费在线视频一区
|
久久国产免费观看精品3
|
全黄大全大色全免费大片
|
国产免费福利体检区久久
|
亚洲白色白色永久观看
|
91亚洲精品视频
|
亚洲欧洲日产专区
|
亚洲欧洲成人精品香蕉网
|
亚洲日韩精品无码一区二区三区
|
国产无遮挡又黄又爽免费网站
|
一级一级毛片免费播放
|
91成人免费观看在线观看
|
国内精品免费久久影院
|
全部免费毛片在线播放
|
成人免费大片免费观看网站
|
97在线观免费视频观看
|
男人都懂www深夜免费网站
|
在线观看特色大片免费网站
|
免费无码一区二区三区
|
18国产精品白浆在线观看免费
|
国产精品免费观看久久
|
国产a级特黄的片子视频免费
|
亚洲国产精品无码久久久久久曰
|
亚洲?V无码成人精品区日韩
|
免费精品人在线二线三线区别
|
夫妻免费无码V看片
|
亚洲第一永久AV网站久久精品男人的天堂AV
|
免费人妻无码不卡中文字幕18禁
|
国产亚洲色婷婷久久99精品91
|
亚洲AV无码日韩AV无码导航
|
色久悠悠婷婷综合在线亚洲
|
亚洲AV无码国产在丝袜线观看
|
久久精品国产亚洲AV蜜臀色欲
|
亚洲AV无码专区在线播放中文
|
亚洲精品视频久久
|
亚洲免费综合色在线视频
|
永久免费精品影视网站
|
久久国产色AV免费看
|
日本一区二区三区日本免费
|
国产精品视频永久免费播放
|