接口这个词的曝光率是越来越高呢,那都用到,DELPHI,C#,JAVA,基本都用到,
但就是不晓得为什么要用这个东西???,有啥好处?
在网上搜了一下,说是主要是有两个目的,
1.可以实现多重继承。
2.代码的扩展性
各位前辈可否给与详细解释!多谢谢了

解决方案 »

  1.   

    http://search.safaribooksonline.com/?x=1&mode=section&sortKey=title&sortOrder=asc&view=&k=20&g=&catid=&s=1&b=1&f=1&t=1&c=1&u=0&r=&o=1&n=1&d=1&p=1&a=0&xmlid=0321245660/ch03lev1sec1
    http://search.safaribooksonline.com/?x=1&mode=section&sortKey=title&sortOrder=asc&view=&k=20&g=&catid=&s=1&b=1&f=1&t=1&c=1&u=0&r=&o=1&n=1&d=1&p=1&a=0&xmlid=0321245660/ch03lev1sec2
      

  2.   

    一.接口的定义 
    定义:定义一个协定。实现接口的类或结构必须遵守其协定。 
    简单的说就是接口或者类之间交互时遵守的一个显示定义。最初接触“类与类之间通过接口交互”这个概念时,误以为接口就是类公开的方法,类之间通过类的方法进行交互。其实接口是独立于类的一个定义。接口定义类之间交互的标准。 
    那么类与类之间直接交互就好了,为什么还要使用接口呢? 
    这主要是因为:接口是类之间交互内容的一个抽象,把类之间需要交互的内容抽象出来定义成接口,可以更好的控制类之间的逻辑交互。可见接口内容的抽象好坏关系到整个程序的逻辑质量;另外可以在任何时候通过开发附加接口和实现来添加新的功能; 关于接口一个很重要的概念:接口只包含成员定义,不包含成员的实现,成员的实现需要在继承的类或者结构中实现。 
    接口的成员包括:方法,特性,索引器,事件。 
    注意:接口不包含字段。 
    实现接口的类必须严格按其定义来实现接口的每个方面 
    接口本身一旦被发布就不能再更改,对已发布的接口进行更改会破坏现有的代码。 
    一个典型的接口示例: 
    using System; 
    using System.Colletion; 
    public delegate voic Chang(object sender,object event)//定义一个委托 
    public interface Ibroker //定义一个股票经济人接口 

    string GetRating (string stock);//一个获得金额的方法(此处没有实现) 
    decimal pricePerTrade //定义一个设置每股价格的特性 

    get; //没有实现的 
    set; 
    } decimal this(string StockName) //定义索引器 

    get; 
    set; 
    } event Change pricechange; //定义接口的事件 

      

  3.   

    不知道我理解的对不,一个爹多个儿子,儿子的武艺的名称逗是由爹来声名的,只是每个实现的功能不一样,JAVA和C#就排除了一个儿子多个爹的问题,呵呵,
      

  4.   

    光说没用,要想真正理解接口的含义,最好还是看看国外优秀的开源工程的源代码。
    比如www.castleproject.com的Castle.真正实现了面向接口编程。有兴趣可以看一看。你就会理解接口到底是什么