面向接口编程的好处

原创 2013年12月05日 15:35:04

面向接口编程就是面向抽象编程、面向规范编程,它带来的最大的好处便是解耦、增强扩展性、屏蔽变化

举例:非单例的情况,侧重于强调[扩展性强]

//命令接口
public interface ICommand{
    void doCommand();
}

//命令1
public class Command1 implements ICommand{}

//命令2
public class Command2 implements ICommand{}

//命令执行器
public class CommandExecutor{
    public void execute(ICommand command){        
    //略    
    }
}

//命令工厂
public class CommandFactory{
    ICommand getCommand(string type){
        //通过type查询配置文件,然后反射创建Command
    }
}

public class Client{
    public static void main(String args[]){
        CommandFactory f=new CommandFactory();
        ICommand c1 = f.getCommand("1");
        ICommand c2 = f.getCommand("2");
        CommandExecutor ce = new CommandExecutor();
        c.execute(c1);
        c.execute(c2);
    }
}

CommandExecutor的execute方法不关心是传过来的是什么命令,只管执行。

增加新的命令实现类,对CommandExecutor没有任何影响。

举例二:单例时的情况 ,侧重于强调[屏蔽变化]

1、最最常见的DAO模式,程序运行的时候针对一个DAO接口只有一个实现存在于jvm中,这种情况下虽然在运行时无法实现接口和实现的一对多关系,但当某天需要针对另一种数据库进行移植的时候,只需要DAO的实现发生变化即可,调用DAO的Service层不用任何变化。

2、还有最最常用的Servlet,我们在编写自己的Servlet程序的时候,用的是HttpServletRequest接口和HttpResponse接口而不是具体的实现,那么我们的程序可以运行于Tomcat上,可以运行于Jetty上,可以运行于WebLogic上,而无需任何更改、变化。

 

 

 

java中面向接口编程的好处

一、 像J2EE中的API规范基本上都是接口,由各应用服务器来实现,比如:WebSphere按照这个接口实现自己的,WebLogic也按照这个接口实现自己的,作为开发者来说我们根本就不用去管谁是怎样...
  • Code_lr
  • Code_lr
  • 2016年03月15日 20:33
  • 5950

面向接口编程优缺点

下面是我对面向接口编程的理解 优点: 1.程序结构清晰,使用方便 2.接口经过合理设计后,有利于程序设计的规范化,并可以并行开发,提高工作效率 3.实现了程序的可插拔性,对于不同的需求切换不同...
  • wantken
  • wantken
  • 2014年06月17日 14:46
  • 3831

面向接口编程的优点

1 首先什么是面向接口编程? 面向接口编程就是先把客户的业务逻辑线提取出来,作为接口,业务具体实现通过该接口的实现类来完成。当客户需求变化时,只需编写该业务逻辑的新的实现类,通过更改配置文件(例如...
  • JJ_nan
  • JJ_nan
  • 2017年04月13日 19:04
  • 1957

面向接口编程及面向接口编程的好处

一:什么是接口? 接口指的是只含有抽象方法的类(抽象类的定义是只要含有一个抽象方法的类,当然也可以含有多个)。在其中的方法只能是public的并且我们不能new一抽象类。JAVA中引入接口很大的原因是...
  • u010138380
  • u010138380
  • 2015年09月20日 20:59
  • 416

接口编程的好处

接口编程的好处在项目中的意义:    在传统的项目开发过程中,由于客户的需求经常变化,如果不采用面向接口编程,那么我们必须不停改写现有的业务代码。改写代码可能产生新的BUG,而且改写代码还会影响到调用...
  • Callo_xu
  • Callo_xu
  • 2011年01月21日 08:22
  • 16632

面向接口编程的好处

洞悉编程思想是我们学习语言过程中的必由之路,但注意对于编程思想的理解一定要建立在大量的代码实现经验上,不然只是在口头空谈编程思想而不去编程,根本无法深入理解思想的核心。 面向对象思想的核心之一,就是...
  • u012402177
  • u012402177
  • 2017年04月12日 17:57
  • 1049

面向接口编程的好处

面向接口编程就是面向抽象编程、面向规范编程,它带来的最大的好处便是解耦、增强扩展性、屏蔽变化 举例:非单例的情况,侧重于强调[扩展性强] //命令接口 public interface ICom...
  • lubiaopan
  • lubiaopan
  • 2013年12月05日 15:35
  • 3812

为什么web项目里面都是面向接口编程的啊?

开发java快2年了,今天忽然发现一个问题,我的web项目都是一个接口对应一个实现类。 这样的接口还有意义吗? 我觉得是没有任何意义的,一个接口对应一个实现类,唯一的好处就是实现类会提示接口的那个...
  • u010523770
  • u010523770
  • 2016年09月06日 19:22
  • 846

面向接口编程与面向实现编程

面向接口编程与面向实现编程最近拜读了四人组的经典名作《设计模式 可复用面向对象软件的基础》一书,打算以博客的形式进行笔记与思考书中提到了可复用面向对象设计的原则,其中的第一个原则是: 针对接口编程...
  • u013400743
  • u013400743
  • 2016年04月26日 17:02
  • 7570

一篇非常经典的文章(面向接口编程)

原文链接:http://blog.chinaunix.net/uid-20478213-id-1942005.html 面向对象设计里有一点大家已基本形成共识,就是面向接口编程,我想大多数人对这个是...
  • legend404
  • legend404
  • 2016年10月14日 10:10
  • 1918
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:面向接口编程的好处
举报原因:
原因补充:

(最多只允许输入30个字)