接口和抽象类都是用来用作规范子类的?

来源:10-5 Java 中的接口

dikadabo

2015-03-16 18:29

接口和抽象类都是用来用作规范子类的?

他们有什么区别?

写回答 关注

2回答

  • Coda
    2015-03-16 21:59:57
    已采纳
    Java接口与抽象类的相同点:
    1. 都不能被实例化。
    2. 都能包含抽象方法。

    Java接口与抽象类的不同点:

    接口支持多继承;抽象类不能实现多继承。
    接口只能定义抽象规则;抽象类既可以定义规则,还可能提供已实现的成员。
    接口是一组行为规范;抽象类是一个不完全的类,着重族的概念。
    接口可以用于支持回调;抽象类不能实现回调,因为继承不支持。
    接口只包含方法、属性、索引器、事件的签名,但不能定义字段和包含实现的方法;抽象类可以定义字段、属性、包含有实现的方法。
    接口可以作用于值类型和引用类型;抽象类只能作用于引用类型。

    dikada...

    你很专业啊,是啥背景?

    2015-03-16 22:23:47

    共 1 条回复 >

  • dikadabo
    2015-03-16 18:34:00

    抽象类只能被单继承,但是接口能被多继承。接口弥补了类在继承上的不足

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530553 学习 · 6091 问题

查看课程

相似问题