既然接口的方法没有自己的实现过程,只能靠实现它的类来实现接口的方法,那么接口有什么好处?请指教!

解决方案 »

  1.   

    我有了些理解:如果在DLL、COM、ACTIVEX、OCX中,不用接口,用能用什么呢?!
      

  2.   

    小弟愚见,认为刘艺的<Delphi 面向对象编程思想>是非常好的关于OO的入门书籍,值得研究一下
      

  3.   

    我也刚好买了一本刘艺的<Delphi 面向对象编程思想>,要是这本书写的再深一点,就好了,就像接口这一张,太浅了。告诉各位同僚千万不要买飞思工作室写的书,真他妈的一群bugger
      

  4.   

    除去在Com中的用法,我不懂Com,下面也是个人理解而已:
    1.Interface提供接口,让任何类去实现,用接口实现类,只注重其接口功能,即我只用这个类的这些功能,类其它有什么我不去管;
    2.接口之方法好象是动态载入,少占用资源;
    3.接口到计数为0时自动释放而无需人工干预,省的用类操作而忘了释放;
    4.楼下补充吧,我不知道了... :P
      

  5.   

    在面向对象程序设计中类的主要应用方式有继承和组合两种方式,通常在oop的设计思想中不建意
    过多的使用继承,因为对象的定位很难,这样就有很大的可能去修改一个类的父类,但是这个方法并不一定适合于它的子类,问题随之而来,这样就造成类体系的混乱,如果通过组合来实现一个新类的话那么这种问题带来的改动相对来说很小。这样每一个被使用的组合类都应该一个特定的功能实现,那么好了通过父类可以公布出来所组合类的方法来实现新的功能应用。但有时候需要把一个类看成为是特定的类,比如说在某种场合只需要把这个类完成特定功能的部分,这就是所谓的有时候需要把一个类成不同的类来看待的原因。可如何才能这么做呢?那就是通过接口来实现,当一个这个类把接口实现了以后那么这个类在特定的场合可以用接口的方式来调用。说白了接口就是定了一组抽象操作。它和抽象类完全一致.随口说的东西,说的不清楚。多多指教,哈哈。
      

  6.   

    主要是为了实现多继承和COM的支持的 比较有用  可以看看 <<COM本质论>>这本书  看前3章后会接口有个较深的认识
      

  7.   

    我觉得接口在COM里用的比较多,并且采用ActiveX组件的时候接口的作用也是不可忽视的。
      

  8.   

    关于接口的意义和使用,在inside vcl有一些介绍和分析,可以看看
      

  9.   

    ActiveX和COM的区别不是完全明白请帮忙再说说
      

  10.   

    强烈同意hlb1111(蜀狼),飞思的书确实太差了!!!!
      

  11.   

    另外,接口的功能,你如果学习过C++的话,就应该懂得C++里面的多生继承多么难以理解了,但在Delphi中用接口实现相同的功能,但要容易理解多了。
      

  12.   

    关于其多重继承我不以为然:既然被继承的每一个接口之方法都要在继承其的类中实现,那么多重继承又有什么用?还不全在继承类中实现从而此类拥有其全部方法?望高手明释...是啊?有高手能回答这个问题吗?
    发现dlephi的书对接口的讲述都太浅了.各位大哥,有什么好的书介绍给我这个菜菜啊
      

  13.   

    Design Pattern 这本书在哪有下载,能提供一下吗?
    还有那本Delphi COM Programming
    是不是都是英文版的呀
      

  14.   

    to : bonniewater(陪你去看海)如果在DLL、COM、ACTIVEX、OCX中,不用接口,用能用什么呢?!==============
    可以用类型转换+对象指针就可以实现接口的用途,但是要自己实现对象释放
      

  15.   

    主要是解决多重继承,它是纯定义,也全部都是PUBLIC
      

  16.   

    同意是为了解决多重继承的说法!!不过个人觉得c++里面的多重继承方法也不难,delphi里用个接口,感觉更加晦涩!
      

  17.   

    to xiaowengweng(随便看看) 我感觉C++中的多态和多继承有弊端 ,而在DELPHI或者JAVA用的接口取代多继承就好多了  这样可以避免多继承带来的问题
      

  18.   

    code6421有自己网站的,DEV QUANTUMGRID更是到处有得DOWN.自己找吧.
      

  19.   

    请问,code6421的网站是什么呢?没搜到谢谢!
      

  20.   

    因为Object Pascal不象C++那样具备多重继承特性,所以可以用接口来实现!
    JAVA与C#也如此!