从语法上面来说,interface不允许提供方法的实现,只能提供方法的原型。实现该接口的类可以实现接口中的方法,也可以不实现,如果不实现需要声明该类为abstract

解决方案 »

  1.   

    interface要用原形,实现在继承类中,
    abstract可以有部分方法实现,部分原形
      

  2.   

    我没涉及实例化 接口按我的话来说就是方法的集合
    从接口继承就是代表继承的类可以实现接口中的方法
    多态的实现就是将继承类的实例对象上溯为一个接口
    而使用接口时候不需要知道实际对象的细节
    恩 其实你如果对c++面向对象很熟悉 应该不难理解这段话
    所以接口中实现方法根本无从谈起 
    java书中也表示接口是比抽象类更抽象的一种设计思想 c++中abstract方法也是不要实现的
    其实道理都是差不多 
    加上java没有多重继承 所以能从多个接口继承也可以说是一种解决方法
    我觉得java的这样设计比c++要逻辑上更严谨
    比如:一个人只有一个父亲(父类)但他可以有很多老师(接口) 从父亲那里得到基本的继承从老师那里学习更多的方法
    :) 一起探讨探讨 呵呵
      

  3.   

    接口只能声明,不能定义方法,
    所以连void draw(Graphics g){}都是错的
      

  4.   

    如果一个东西extends了一个interface的话,它仍然是一个interface,而interface是不能有方法体的,可以有方法定义,和public static final的字段(比如javax.swing.WindowConstants)
      

  5.   

    谢谢各位!我对C++还是比较熟悉的;只是现在刚学JAVA,对你们说的也基本能够理解;我唱听人说JAVA和C++的很多相同,我觉得学好从他们的区别来学还是容易上手一点,希望多多指教。