linkin大话设计模式--适配器模式

linkin大话设计模式--适配器模式


大家知道,在java中只允许单继承,但是在实际问题中往往都需要多继承,java引入了接口这一概念。(一个类可以实现多个接口)


由于接口中都是抽象方法,那么我们在实现它的时候就必须全部覆写这些方法。假如我有一个类,这个类只想覆写一部份方法怎么办?

 

在接口与这个类中间可以加一个抽象类:

抽象类去覆写接口中的全部方法,而那个类去继承这个抽象类,根据需要覆写抽象类中的方法。(简单的适配器模式)


代码如下:


 

public class AbstractTest {
        public static void main(String[] args) {
            Eat p=new MyPerson();
            p.eatBread();
            p.eatApple();
    }

}
//编译时的接口
interface Eat{
    public void eatBread();
    public void eatApple();
    public void eatBanana();
}

//接口和每一个具体的实现类之间的抽象类
abstract class PersonEat implements Eat{
    public void eatBread(){};
    public void eatApple(){};
    public void eatBanana(){};
}

//具体的子类实现
class MyPerson extends PersonEat{
    public void eatBread(){
        System.out.println("我在吃面包...");
    }
    
    public void eatApple(){
        System.out.println("我在吃苹果...");
    }
}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值