您现在的位置: 天极网 > 开发频道 > 爪哇语言结构性模式之变压器模式介绍
全文

爪哇语言结构性模式之变压器模式介绍

2001-12-25 16:19作者:阎宏出处:yesky责任编辑:方舟

  问答题答案

  第1题、根据提示,我们可以量力而为。因此,我们将把miao()“适配成”wao(),catchRat()“适配成”fetchBall(), run(),sleep()不变。源代码如下:


图7. 男朋友小狗适配器的类图。

package com.javapatterns.adapter.kittie2doggie;
public interface Doggie
{
    void wao();
    void fetchBall();
    void run();
    void sleep();
    void setName(String name);
    String getName();
}
代码清单11. SwingUI类的源代码。红色的代码就是使用WindowAdapter的无名内部类。

package com.javapatterns.adapter.kittie2doggie;
public class Kittie {
    public void miao(){}
    public void catchRat() {
    }
    public void run() {
    }
    public void sleep() {
    }
    public String getName(){ return name; }
    public void setName(String name){ this.name = name; }
}
代码清单12. SwingUI类的源代码。红色的代码就是使用WindowAdapter的无名内部类。

package com.javapatterns.adapter.kittie2doggie;
public class Boyfriend extends Kittie implements Doggie
{
    public void wao()
    {
        this.miao();
    }
    public void fetchBall()
    {
        this.catchRat();
    }
    public void run()
    {
        super.run();
    }
    public void sleep()
    {
        super.sleep();
    }
    public String getName()
    {
        return super.getName();
    }
    public void setName(String name)
    {
     super.setName(name);
    }
}
代码清单13. SwingUI类的源代码。红色的代码就是使用WindowAdapter的无名内部类。

  怎么,她不满意呀?那也有办法:把wao(),fatchBall()当作新的方法,在变压器类中实现。由于你扮演变压器角色, 当她调用wao(),fatchBall()方法是,你就叫一声,或把球捡回来就可以了。

  你不满意呀?那就再去找一只真正的小狗吧。变压器模式的威力就到此为止了。

  第2题、这里使用的是类形式的变压器模式。

  第3题、我的一个学生告诉我,理解这个问题的关键,即男朋友必须装小狗。

  第4题、使用类形式的结果是,她一旦想要另一个宠物,她就得换一个男朋友。 使用实例形式的变压器模式的结果是,她如果想要另一个宠物,原来的男朋友就得身兼几种身份。
共8页。 9 7 1 2 3 4 5 6 7 8

软件资讯·软件下载尽在天极软件

共8页。 首页 上一页 4 5 6 7 8
相关搜索:
相关文章及软件
关注此文读者还看过
热门关注
特别推荐
网友关注
软件下载
娱乐下载
驱动下载
文章排行
本周
本月
最近更新
关于我们|About us|网站律师|天极服务|电子杂志|RSS订阅|加入我们|网站地图
TMG
Copyright (C) 1999-2009 Chinabyte.com, All Rights Reserved 版权所有 天极网络
商务联系、网站内容、合作建议:010-82657868
版权声明 在线提交意见反馈 渝ICP证B2-20030003号
经营性网站备案信息 网警备案 中国网站排名
天极传媒:天极网|比特网|IT专家网|IT商网|52PK游戏网|IT分众