实验8:适配器模式

本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:

1、理解适配器模式的动机,掌握该模式的结构;

2、能够利用适配器模式解决实际问题

[实验任务一]:双向适配器

实现一个双向适配器,使得猫可以学狗叫,狗可以学猫抓老鼠。

实验要求:

1.画出对应的类图;

2.提交源代码;

3.注意编程规范。

1、类图

 

源代码

Adapter.java

package org.example;

public class Adapter implements Cat,Dog{
    private Cat cat=new Realcat();
    private Dog dog=new Realdog();
    public void setcat(Cat _cat){
        cat=_cat;
    }
    public void setdog(Dog _dog){
        dog=_dog;
    }
    public void zhua(){}
    public void wang(){}
    public void run(){
        System.out.println("小狗学小猫:");
        cat.zhua();
    }
    public void cry(){
        System.out.println("小猫学小狗:");
        dog.wang();
    }
}

Cat

package org.example;

public interface Cat {
    public void cry();
    public void zhua();

}

Dog

package org.example;

public interface Dog {
    public void wang();
    public void run();

}

Realcat.java

package org.example;

public class Realcat implements Cat{
    public void cry(){
        System.out.println("喵喵叫!");
    }
    public void zhua(){
        System.out.println("抓老鼠!");
    }
}

Realdog.java

package org.example;

public class Realdog implements Dog{
    public void wang(){
        System.out.println("汪汪叫!");
    }
    public void run(){
        System.out.println("快快跑!");
    }

}

Main.java

package org.example;

public class main {

    public static void main(String[] args) {
        Dog dog=new Adapter();
        Cat cat=new Adapter();
        dog.run();
        cat.cry();
    }
}

 

3、运行截图

 

posted @ 2024-11-05 15:14  不会JAVA的小袁  阅读(7)  评论(0编辑  收藏  举报