接口是描述一个对象能干什么,但是没有具体怎么干
抽象类是类似接口的东西,但是它实现了部分方法

解决方案 »

  1.   

    1,接口可以提供一些对象的功能,操作,这些方法再继承接口类的时候必须被重写,也就是派生类必须有接口说明的这些功能
    2,抽象类可以用来提供接口,主要区别是他可以将某些接口实现,但是接口类却不能实现
      

  2.   

    从使用的角度上来说,我感觉二者相差不大。
    但在语意上,二者有很大的差别,实现了一个接口的类不见得和接口有多大的关系,而继承了一个抽象类的类则需要存在一个is-a的关系。换句话说,两个一点关系都没有的类都可以实现同一个接口,而继承了同一个抽象类的两个类之间一定存在某种联系,因为它们都是is-a抽象类。由于Java语法上的约束,在同样的条件下,能使用接口尽量使用接口,而不要使用抽象类,最好的一个例子就是java中关于线程的使用,尽可能用Runnable,而不是Thread。