适配器模式(Adapter)(对象结构型模式)
2017-06-30 13:37
387 查看
参考文档:
1.设计模式-可复用面向对象软件的基础
2.http://blog.csdn.net/guolin_blog/article/details/9400141(Java设计模式透析之 —— 适配器(Adapter))
适配器模式(Adapter)(对象结构型模式)
理论方面的知识,请查看参考文档的内容。
看一下adapter的结构:
类适配器,在java中的实现,表现为实现多个接口类,进行匹配:
![](http://img.blog.csdn.net/20170629110133016?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDk0NzA5OA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
对象适配器,在java中的实现,表现为对象组合:
![](http://img.blog.csdn.net/20170629110155100?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDk0NzA5OA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
代码实现,案例是参考文档2中的,实现的方式是:对象适配器,实现adapter的类:ServerOne.java。
1.设计模式-可复用面向对象软件的基础
2.http://blog.csdn.net/guolin_blog/article/details/9400141(Java设计模式透析之 —— 适配器(Adapter))
适配器模式(Adapter)(对象结构型模式)
理论方面的知识,请查看参考文档的内容。
看一下adapter的结构:
类适配器,在java中的实现,表现为实现多个接口类,进行匹配:
对象适配器,在java中的实现,表现为对象组合:
代码实现,案例是参考文档2中的,实现的方式是:对象适配器,实现adapter的类:ServerOne.java。
PlayerCount.java:
package com.rick.designpattern.adapter; /** * Created by MyPC on 2017/6/29. */ public interface PlayerCount { String getServerName(); int getPlayerCount(); }
ServerOne.java:
package com.rick.designpattern.adapter; /** * Created by MyPC on 2017/6/29. */ public class ServerOne implements PlayerCount { @Override public String getServerName() { return "1服"; } @Override public int getPlayerCount() { return new ServerFirst().getOnlinePlayerCount(); } }
ServerTwo.java:
package com.rick.designpattern.adapter; /** * Created by MyPC on 2017/6/29. */ public class ServerTwo implements PlayerCount { @Override public String getServerName() { return "2服"; } @Override public int getPlayerCount() { return Utility.getOnlinePlayerCount(2); } }
ServerThree.java:
package com.rick.designpattern.adapter; /** * Created by MyPC on 2017/6/29. */ public class ServerThree implements PlayerCount { @Override public String getServerName() { return "3服"; } @Override public int getPlayerCount() { return Utility.getOnlinePlayerCount(3); } }
Utility.java:
package com.rick.designpattern.adapter; /** * Created by MyPC on 2017/6/29. */ public class Utility { public static int getOnlinePlayerCount(int i) { return (int) (Math.random() * 100); } }
ServerFirst.java:
package com.rick.designpattern.adapter; /** * Created by MyPC on 2017/6/29. */ public class ServerFirst { public int getOnlinePlayerCount() { return (int) (Math.random() * 100); } }
Client.java:
package com.rick.designpattern.adapter; /** * Created by MyPC on 2017/6/29. */ public class Client { public static void main(String[] args) { ServerOne one = new ServerOne(); System.out.println(one.getServerName() + "=" + one.getPlayerCount()); ServerTwo two = new ServerTwo(); System.out.println(two.getServerName() + "=" + two.getPlayerCount()); ServerThree three = new ServerThree(); System.out.println(three.getServerName() + "=" + three.getPlayerCount()); } }
相关文章推荐
- 7种结构型模式之:适配器模式(Adapter):类适配器、对象适配器
- 对象结构型模式——适配器模式(adapter)
- 适配器模式(Adapter)-对象结构型模式
- 适配器模式(Adapter Pattern 类对象结构型模式)
- 适配器模式(Adapter Pattern 类对象结构型模式)
- 设计模式(五)适配器模式Adapter(结构型)
- 类/对象结构型模式——适配器模式(Apapter)
- 设计模式(6)-结构型-适配器模式(Adapter)(个人笔记)
- Adapter 适配器模式(结构型模式)
- 设计模式(8)の结构型の适配器模式(Adapter)
- [设计模式](五):适配器模式(Adapter)[类适配器、对象适配器、接口适配器]
- (第Ⅲ部分 结构型模式篇) 第7章 适配器模式(Adapter Pattern)
- 结构型模式1:适配器模式(Adapter Pattern)
- 【设计模式学习笔记七】【结构型模式】【适配器模式(Adapter)】
- 结构型模式之适配器模式(Adapter Pattern)与外观模式(Facade Pattern)
- 白话设计模式--结构型模式之 适配器模式(Adapter)
- (第Ⅲ部分 结构型模式篇) 第7章 适配器模式(Adapter Pattern)
- 23种设计模式(6)_结构型_适配器模式(Adapter Pattern)
- 设计模式 一 适配器模式 Adapter(结构型模式)
- 设计模式(五)适配器模式Adapter(结构型)