书上有这么一段话:
如果一个类声明实现一个接口,但是没有实现接口中的所有方法,那么这个类必须是abstract类
为何 有点不懂

解决方案 »

  1.   

    因为abstract类不能创建对象,所以继承abstract类的类会实现abstract类没有实现的方法,建议还是在看书,这类问题看书好,来这问这种基础问题有可能会因为沟通问题造成误导。
      

  2.   

    很好理解啊,如果是类,那么只有抽象类可以有“未实现的方法”,既然类里有未被实现的方法,那么就一定是抽象类,那就一定要声明成abstract
      

  3.   

    个人对抽象类和接口的理解是:1、抽象类中可以有非abstract标识的方法,但一个类中存在一个或多个方法有abstract标识时,该类必须声明为abstract类。
    2、普通的类继承了抽象类后,要实现抽象类中的所有抽象方法,但可以不重写抽象类中非abstract标识的方法。
    3、对于接口中定义的方法,没有方法体只有方法签名,都是隐含的abstract标识的方法,不存在像抽象类中可以有非abstract
       标识的方法,所以必须实现接口中所有的方法。
      

  4.   

    接口有10个方法,你只能完成其中的5个,难道你就算完整的实现类了?可以单独的干活了?
    当然不可以,所以是 abstract 强调他不能单独 new
      

  5.   

    谈谈我的理解。因为接口中所有的方法都是抽象的,写接口中的方法的时候没有必要使用abstract关键字,所以当实现接口的时候,
    要实现接口中的所有方法。抽象类的定义,如果含有抽象方法,那么这个类一定是抽象类,但是一个抽象类,也可以没有抽象方法。如果只是实现了接口中的部分方法,因为还有一部分抽象方法没有实现。既然还有抽象方法,那么这个类当然是抽象类了。
      

  6.   

    大家说的意思我明白了 试问一下 java中引出abstract 是不是为接口服务的
      

  7.   

    我才看java一个星期 书上说的我不能理解 只好问了
    还有是我自学的 没办法了
      

  8.   


    不是的,不去实现任何接口,也可以把类定义成 abstract抽象类可以看成是一种只开发了一半的类
    它的部分方法自己实现不了,须得由子类根据实际情况自己去实现