JAVA-面向接口编程

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

JAVA自习,继abstract的学习了解了面向抽象编程思想之后,又学习了interface,接触了面向接口编程,记录面向接口编程学习。


一、面向接口编程是什么?

        本思想和面向抽象思想类似,在设计程序时,学习怎样面向借口去设计程序。接口只关心操作,但不关心这些操作的具体实现细节,使我们可以把关注点放在设计上去。

二、实例

在具体介绍面向接口编程前需要进行铺垫:什么是接口回调?

把某一接口的类创建的对象的引用赋值给该接口声明的接口变量,那么该接口变量就可以调用被类实现的接口方法。实际上,当接口变量调用被类实现的接口方法时,就是通知相应的对象调用到这个方法。

Com com;//接口引用

ImpleCom obj = new ImpleCom();//接口实现类对象

com = object;//接口回调

1.广告接口:

Advertisement:

public interface Advertisement {
    public void showAdvertisement();
    public String getCorpName();
}

2.广告板类:

AdvertisementBoard:

public class AdvertisementBoard {
    public  void show(Advertisement advertisement){
        System.out.println(advertisement.getCorpName()+"的广告词如下:");
        advertisement.showAdvertisement();
    }
}

3.具体广告:非abstract继承接口要实现接口中的所有方法

<1>白云公司:

public class WhiteCloudCorp implements Advertisement{
    @Override
    public void showAdvertisement() {
        System.out.println("下蛋公鸡,公鸡中的战斗鸡欧耶!!!");
    }

    @Override
    public String getCorpName() {
        return "白云公司广告词如下:";
    }
}

<2>黑土公司:

public class BlackLandCorp implements Advertisement{

    @Override
    public void showAdvertisement() {
        System.out.println("有蛋也不能不下,待会憋不住了!!!");
    }

    @Override
    public String getCorpName() {
        return "黑土集团广告词如下:";
    }
}

4.最终实现:

public class Application {
    public static void main(String[] args) {
        AdvertisementBoard advertisementBoard = new AdvertisementBoard();
        advertisementBoard.show(new BlackLandCorp());
        advertisementBoard.show(new WhiteCloudCorp());
    }
}

 


总结

面向接口的类在实现中不用更改自身只需要使用即将调用的接口的引用(接口回调),在接口编辑完成后,只需要使用实体类来继承接口并实现变量函数就可以轻松做到复制,类似无数个其他公司的广告板也可以直接制造出来。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值