个人理解
首先,抽象类中必然包含抽象方法也可以包含一般方法,接口中只包含抽象方法。抽象方法就像游戏规则,抽象类跟接口中一旦定义,则子类或者实现类中必须要对其进行复写。
其次,抽象类主要是用于被继承的,共性一般方法定义其中,子类便可以直接拿过来用,提高了代码的重用性。但是java中只可以单继承,接口却可以多实现。接口多实现,即一个类可以implements接口A和接口B等,同时被实现的接口间用逗号隔开。接口相当于提供功能的扩展。例如在开发工程中,某个工程最早只完成一项任务,随着技术的更新,需要对之前开发的工程增加项目。这时不可能把原有的工程重新来写,这样工作量太大,便可以把新的项目功能定义在一个接口中,让原有的工程去实现这个接口,复写其中的方法便达到了功能的扩展。
希望能帮到楼主。 |