美文网首页
Interface 与 abstract 类的区别

Interface 与 abstract 类的区别

作者: 乐百事52淑熙 | 来源:发表于2018-04-10 10:02 被阅读0次

首先说一下两者的共同点:不能被实例化。

区别:

1.抽象类可以有构造方法,接口中不能有构造方法。

2.抽象类中可以有普通成员变量,接口中没有普通成员变量

3.抽象类中可以包含非抽象的普通方法,接口中的所有方法必须都是抽象的,不能有非抽象的普通方法。

4. 抽象类中的抽象方法的访问类型可以是public,protected和默认类型,但接口中的抽象方法只能是public类型的,并且默认即为public abstract类型。

5. 抽象类中可以包含静态方法,接口中不能包含静态方法

6. 抽象类和接口中都可以包含静态成员变量,抽象类中的静态成员变量的访问类型可以任意,但接口中定义的变量只能是public static final类型,并且默认即为public static final类型。

7. 一个类可以实现多个接口,但只能继承一个抽象类。

第七点可以说是最为关键的,抽象类只能继承,一对一,接口需要实现,可以一对多。从这点来看,接口更为灵活。

个人公号:【排骨肉段】,可以关注一下。

相关文章

  • Interface 与 abstract 类的区别

    首先说一下两者的共同点:不能被实例化。 区别: 1.抽象类可以有构造方法,接口中不能有构造方法。 2.抽象类中可以...

  • interface与abstract类的区别

    以下内容整理自互联网,仅用于个人学习 继承 abstract使用的是extends关键字,表示一种继承关系,所以只...

  • Interface与abstract类的区别

    抽象类和接口都不能够实例化,但可以定义抽象类和接口类型的引用。 一个类如果继承了某个抽象类或者实现了某个接口都需要...

  • 知识打点

    1.加与不加static的区别 2.abstract类实现interface类不需全部重写 3.值传递与引用传递区...

  • Android面试,个人总结

    Java部分: 一、八种数据类型以及他们的包装类 二、abstract与interface的区别(抽象类和接口) ...

  • Java中级软件面试题(二)

    5.抽象类与接口(interface)的区别; (1)abstract class 在 Java 语言中表示的是一...

  • Abstract Class与Interface区别

    一、Abstract Class 与 Interface 的构造抽象类 Abstract Class 接口 Int...

  • 面试问题整理

    接口(interface)和抽象类(abstract class)的区别是什么? 一个类实现(implemens)...

  • 接口与抽象类的区别

    抽象类与接口有什么区别: 相同点: 都不能实例化对象 不同: 1.使用interface 抽象类用abstract...

  • Java抽象类Abstract Class和接口Interfac

    抽象类Abstract Class和接口Interface区别 抽象类是为了隐藏内部实现,只向外部展示当前类具备的...

网友评论

      本文标题:Interface 与 abstract 类的区别

      本文链接:https://www.haomeiwen.com/subject/bfuwhftx.html