首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件开发 >

狂言设计模式_适配器模式

2013-03-14 
大话设计模式_适配器模式以姚明在NBA需要翻译为例子。package com.wzs.design/** * 大话设计模式--page174

大话设计模式_适配器模式

以姚明在NBA需要翻译为例子。

package com.wzs.design;/** * 大话设计模式--page174 适配器模式 *  * @author Administrator *  */public class AdapterPattern {public static void main(String[] args) {Player player1 = new Forwards("巴蒂尔");player1.attack();Player player2 = new Center("超人");player2.attack();Player player3 = new Guards("麦克格雷迪");player3.attack();Player player4 = new Translator("姚明");player4.attack();}}/* * 球员 */class Player {public String name;public Player(String name) {this.name = name;}// 攻击public void attack() {}// 防守public void defense() {}}// 前锋class Forwards extends Player {public Forwards(String name) {super(name);}@Overridepublic void attack() {System.out.println("前锋 " + this.name + " 进攻.");}@Overridepublic void defense() {System.out.println("前锋 " + this.name + " 防守.");}}// 中锋class Center extends Player {public Center(String name) {super(name);}@Overridepublic void attack() {System.out.println("中锋 " + this.name + " 进攻.");}@Overridepublic void defense() {System.out.println("中锋 " + this.name + " 防守.");}}// 后卫class Guards extends Player {public Guards(String name) {super(name);}@Overridepublic void attack() {System.out.println("后卫 " + this.name + " 进攻.");}@Overridepublic void defense() {System.out.println("后卫 " + this.name + " 防守.");}}// 外籍中锋class ForeignCenter {public String name;public ForeignCenter(String name) {this.name = name;}// 攻击public void attack() {System.out.println("外籍中锋 " + this.name + " 进攻.");}// 防守public void defense() {System.out.println("外籍中锋 " + this.name + " 防守.");}}// 翻译者class Translator extends Player {private ForeignCenter foreignCenter = new ForeignCenter(this.name);public Translator(String name) {super(name);}@Overridepublic void attack() {foreignCenter.attack();}@Overridepublic void defense() {foreignCenter.defense();}}


1楼adam_zs昨天 20:23
[code=java]n输出结果:n前锋 巴蒂尔 进攻.n中锋 超人 进攻.n后卫 麦克格雷迪 进攻.n外籍中锋 姚明 进攻.nn[/code]

热点排行