适配器模式(Adapter)(对象结构型模式)
来源:互联网 发布:java数组如何调用方法 编辑:程序博客网 时间:2024/06/05 01:51
参考文档:
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()); }}
阅读全文
0 0
- 适配器模式(Adapter)(对象结构型模式)
- 适配器模式(Adapter Pattern 类对象结构型模式)
- Adapter适配器模式(结构型模式)
- Adapter模式(适配器模式 结构型)
- 7种结构型模式之:适配器模式(Adapter):类适配器、对象适配器
- 适配器模式(Adapter)-对象结构型模式
- 2.1 Adapter(适配器) -- 类/对象结构型模式
- Adapter 适配器(结构型模式)
- 结构型模式:Adapter(适配器)
- Adapter适配器(结构型模式)笔记
- 适配器模式Adapter(结构型)
- java适配器模式(Adapter)-结构型
- 六、适配器模式Adapter(结构型)
- Adapter(适配器)--类对象结构型模式
- 设计模式之适配器(Adapter)---类对象结构型模式
- C#面向对象设计模式纵横谈 学习笔记7 Adapter适配器(结构型模式)
- 面向对象设计模式之Adapter适配器模式(结构型)
- 设计模式之九:Adapter(适配器)—类对象结构型模式
- Objective-C 语法一(类)
- 微信小程序之遍历(四)
- 命名实体识别方法
- MySQL解决插入emoji表情失败的问题
- spring事务属性的几个试验(转载)
- 适配器模式(Adapter)(对象结构型模式)
- recycleview万能分割线
- Kotlin学习笔记——标准库kotlin.collections
- 开机自动打开浏览器并定时重启
- 空气净化器工作原理
- Objective-C 数据类简介
- 美团外卖、饿了么竞品分析
- bingfa
- 收集一些不错的GitHub轮子