java 面向接口编程

Advertisement.java

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

AdvertisementBoard.java

public class AdvertisementBoard { //负责创建广告牌
   public void show(Advertisement adver) {
       System.out.println(adver.getCorpName()+"的广告词如下:");
       adver.showAdvertisement(); //接口回调
   }
}

WhiteCloudCorp.java

public class WhiteCloudCorp implements Advertisement { //PhilipsCorp实现Avertisement接口
   public void showAdvertisement(){
      System.out.println("@@@@@@@@@@@@@@@@@@@@@@");
      System.out.printf("飞机中的战斗机,哎yes!\n");
      System.out.println("@@@@@@@@@@@@@@@@@@@@@@");
   }
   public String getCorpName() {
      return "白云有限公司" ;
   }
}

BlackLandCorp.java

public class BlackLandCorp implements Advertisement {
   public void showAdvertisement(){
      System.out.println("**************");
      System.out.printf("劳动是爹\n土地是妈\n");
      System.out.println("**************");
   }
   public String getCorpName() {
      return "黑土集团" ;
   }
}

Example6_6.java

public class Example6_6 {
   public static void main(String args[]) {
      AdvertisementBoard board = new AdvertisementBoard();
      board.show(new BlackLandCorp());
      board.show(new WhiteCloudCorp());
   }
}
时间: 2024-10-12 13:29:07

java 面向接口编程的相关文章

java面向接口编程

在oop中有一种设计原则是面向接口编程,面向接口编程有非常多优点,详细百度一大片.我来谈一下详细的使用中的一些不成熟的见解.! 首先面向接口编程能够消除类之间的依赖关系,使得业务仅仅依赖接口. 这样有什么优点呢? 这种优点大大的.比方说我们声明一个car的接口.我们对车有下面行为,我们能够开车.洗车,推车,修车,拆车等等, 详细用代码实现: package com.panther.dong.faceinterface; /** * Created by panther on 15-8-9. */

Java——面向接口编程

最大的作用:解耦(少修改Java代码,多修改配置文件) 配置文件+反射+接口 来实现 原文地址:https://www.cnblogs.com/x54256/p/8457368.html

Java中的面向接口编程

面向接口编程是很多软件架构设计理论都倡导的编程方式,学习Java自然少不了这一部分,下面是我在学习过程中整理出来的关于如何在Java中实现面向接口编程的知识.分享出来,有不对之处还请大家指正. 接口体现的是一种规范和实现分离的设计哲学,充分利用接口可以极好地降低程序各模块之间的耦合,从而提高系统的可扩展性和可维护性.基于这种原则,通常推荐“面向接口”编程,而不是面向实现类编程,希望通过面向接口编程来降低程序的耦合.下面分两种常用场景来示范“面向接口”编程的优势. (一)简单工厂模式 有一个场景,

java中面向接口编程

面向接口编程详解(一)——思想基础 我想,对于各位使用面向对象编程语言的程序员来说,“接口”这个名词一定不陌生,但是不知各位有没有这样的疑惑:接口有什么用途?它和抽象类有什么区别?能不能用抽象类代替接口呢?而且,作为程序员,一定经常听到“面向接口编程”这个短语,那么它是什么意思?有什么思想内涵?和面向对象编程是什么关系?本文将一一解答这些疑问. 1.面向接口编程和面向对象编程是什么关系 首先,面向接口编程和面向对象编程并不是平级的,它并不是比面向对象编程更先进的一种独立的编程思想,而是附属于面向

从头认识设计模式-策略模式-05-引入设计原则:面向接口编程

这一章节我们来讨论一下怎么解决上一章节扩展性差的问题. 1.解决方案 面向接口编程 2.思路 使用java的多态性,动态的设置导入导出的行为 3.代码清单 在Base里面使用导入导出的接口,然后增加一个通用的导出导入方法,下面的实现中,我们只需要设置不同的导入导出行为,即可通过导入导出方法来实现不同的导入导出结果. package com.raylee.designpattern.strategy.ch05; /** * 1.0 这个类是我们需要使用设计模式改进的原始类,也就是策略模式应用的初始

java面向切面编程

面向切面在英文中的单词是Aspect Oriented Programming(AOP),在spring框架中叫aop,它是可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术.它是一种新的方法论,它是对传统OOP编程的一种补充. AOP技术是建立在Java语言的反射机制与动态代理机制之上的.请看下图 以上图是利用jdk动态代理为真实对象上的每个方法上加上日志功能.从这张图中可以看出,我们是面向真实对象上的方法编程,把方法切开,在执行方法之前做了日志功能.

跟王老师学接口(四):面向接口编程:命令模式

面向接口编程:命令模式 主讲教师:王少华   QQ群号:483773664 学习目标 理解面向接口编程的优势 掌握命令模式 一.命令模式 (一)场景 假设你的Boss给你这样一个任务要你处理一个数组.但是没有告诉你,如何处理这个数组,是对其进行输出,还是对其排序.遇到这样的Boss很烦!!! (二) 分析 对于这样的需求,我们第一个想到的就是把数组作为方法的形参,但是我们是否可以把"对数组的处理行为"也作为一个方法的形参传入呢? 因为Java不允许代码块的单独存在,所以我们不可能将&q

面向接口编程

系列——MEF实现设计上的“松耦合”(终结篇:面向接口编程) 序:忙碌多事的八月带着些许的倦意早已步入尾声,金秋九月承载着抗战胜利70周年的喜庆扑面而来.没来得及任何准备,似乎也不需要任何准备,因为生活不需要太多将来时.每天忙着上班.加班.白加班,忘了去愤,忘了去算计所谓的价值.天津爆炸事故时刻警示着我们生命的无常,逝者安息,活着的人生活还得继续,珍惜生命,远离伤害.武汉,这座炙热的城市,虽值金秋,却依然经受着“秋老虎”的烘烤,马路上蒸腾的热气迎面袭来,全身毛孔张开,汗流不止,在这般高温下,似乎

那些年搞不懂的高深术语——依赖倒置?控制反转?依赖注入?面向接口编程

那些年,空气中仿佛还能闻到汉唐盛世的余韵,因此你决不允许自己的脸上有油光,时刻保持活力.然而,你一定曾为这些“高深术语”感到过困扰.也许时至今日,你仍对它们一知半解.不过就在今天,这一切都将彻底改变!我将带领你以一种全新的高清视角进入奇妙的编程世界,领略涵泳在这些“高深术语”中的活泼泼的地气,以及翩跹于青萍之末的云水禅心. ·内聚 内聚,通俗的来讲,就是自己的东西自己保管,自己的事情自己做. 经典理论告诉我们,程序的两大要素:一个是数据(data),一个是操作(opration).而 PASCA