请看此贴,有关于接口问题的一个讨论.
http://expert.csdn.net/Expert/TopicView1.asp?id=1226948建议:此类属于基本概念的问题,不要指望能在CSDN上找到详细的解答,没有人愿意花这个时间,应该找一本<thinking in java>之类的书埋头苦读.

解决方案 »

  1.   

    这是设计模式中的关于接口的节选.在面向对象系统中,接口是基本的组成部分。对象只有通过它们的接口才能与外部交流,
    如果不通过对象的接口就无法知道对象的任何事情,也无法请求对象做任何事情。对象接口
    与其功能实现是分离的,不同对象可以对请求做不同的实现,也就是说,两个有相同接口的
    对象可以有完全不同的实现。
    当给对象发送请求时,所引起的具体操作既与请求本身有关又与接受对象有关。支持相
    同请求的不同对象可能对请求激发的操作有不同的实现。发送给对象的请求和它的相应操作
    在运行时刻的连接就称之为动态绑定(dynamic binding)。
    动态绑定是指发送的请求直到运行时刻才受你的具体的实现的约束。因而,在知道任何
    有正确接口的对象都将接受此请求时,你可以写一个一般的程序,它期待着那些具有该特定
    接口的对象。进一步讲,动态绑定允许你在运行时刻彼此替换有相同接口的对象。这种可替
    换性就称为多态( p o l y m o r p h i s m ),它是面向对象系统中的核心概念之一。多态允许客户对象仅
    要求其他对象支持特定接口,除此之外对其假设几近于无。多态简化了客户的定义,使得对
    象间彼此独立,并可以在运行时刻动态改变它们相互的关系。
    设计模式通过确定接口的主要组成成分及经接口发送的数据类型,来帮助你定义接口。
    设计模式也许还会告诉你接口中不应包括哪些东西。M e m e n t o ( 5 . 6 )模式是一个很好的例子,
    它描述了怎样封装和保存对象内部的状态,以便一段时间后对象能恢复到这一状态。它规定
    了M e m e n t o对象必须定义两个接口:一个允许客户保持和复制m e m e n t o的限制接口,和一个只
    有原对象才能使用的用来储存和提取m e m e n t o中状态的特权接口。
    设计模式也指定了接口之间的关系。特别地,它们经常要求一些类具有相似的接口;或
    它们对一些类的接口做了限制。例如, D e c o r a t o r ( 4 . 4 )和P r o x y ( 4 . 7 )模式要求D e c o r a t o r和P r o x y
    对象的接口与被修饰的对象和受委托的对象一致。而Vi s i t o r ( 5 . 11 )模式中,Vi s i t o r接口必须反
    映出v i s i t o r能访问的对象的所有类。