大家好,欢迎来到IT知识分享网。
设计模式之Adapter——电话篇
前几天一位朋友把他的电话号码告诉我,我当时随手抄在一张小纸片上,然后把它夹在了一本书里,后来没想到我老婆把这本书邮个他弟了,这不当我有重要的事要和朋友时,没有办法联系了。书已经被邮了,这是不可更改的事实,打电话给朋友说重要的事,也是必须要干的。这些都不能以我的意志而转移。我该怎么办呢?还好有现代化的通讯工具–电话,我可以打电话给小舅子,让他告诉我不就得了吗?
好了言归正传,让我们开始吧。
1、在这里,先定义一个被邮书(PostedBook)类:
public class PostedBook {
//从书中获得我所要的电话号码
public void getTelCodeFromBook() {
System.out.println(“得到电话号码!”);
}
}
2、再定义一个打电话给朋友(TelToFriend)的类:
public class TelToFriend {
public void telSayThing(){
System.out.println(“说重要的事!”);
}
}
3、定义获得打电话(TelPhone)类:
public class TelPhone extends TelToFriend{
private PostedBook postedBook;
public TelPhone (PostedBook postedBook) {//打电话关于被邮的书
this.postedBook=postedBook;
}
public void getTelCode() { //从被邮的书中获得电话号码
postedBook.getTelCodeFromBook();
}
}
4、编写测试类:
public class Test {
public static void main(String args[]){
PostedBook postedBook = new PostedBook(); //被邮的那本书
TelPhone telPhone = new TelPhone(postedBook);
telPhone.getTelCode(); //得到朋友电话号码
telPhone.telSayThing(); //和朋友说重要的事
}
}
5、说明:
A:Adapter模式的目的是将两个没有关系的类结合在在一起使用,在本例中被邮的书和打电话给朋友是两个风马牛不向及的事,正是因为一个电话号码才让他们有所关联,但获得这个号码的前提是我必须先打电话,因此通过电话完成了我的目的.
B:通过打电话这个协调类,我获得了所要的电话号码,同时也和朋友说了事.
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/113656.html