美文网首页Java
接口和抽象类的异同

接口和抽象类的异同

作者: jasperchen | 来源:发表于2020-02-26 21:07 被阅读0次

相同点:

  • 均可定义抽象方法

不同点:

  • 抽象类中可以有抽象方法用abstract修饰, 不可用private. 也可以有非抽象的方法
  • 接口类中所有的方法都只能是抽象方法(从Java8 开始, 接口类中的方法可以有默认实现, 用default关键字修饰)
  • 接口类中的属性都只能是final static.
    为什么接口类中的属性只能是final static?
    接口本来就是高度抽象的类, 其中定义的属性不应该被修改. 而且其中的属性是对于所有实现了该接口的类所共同所有, 一旦修改, 即对所有的类都修改. 没有任何意义. 而用static修饰是因为接口类无法实例化, 如果想要调用其属性, 只能通过类来调用, 所以要加上static.
  • 由于抽象方法一般用public, protected, default来修饰, 不可用private修饰. 因为抽象方法本来就是为了被重写, 如果用private修饰的话, 就无法进行重写了

注: 当一个类同时实现了两个接口时, 并且两个接口中有同名的默认实现方法, 则该类需要重写该默认方法.

相关文章

  • 梳理一

    1、抽象类和接口的异同点? 相同点 都是不断向上抽取而来的。 不同点 抽象类需要被继承,而且只能单继承。接口需要被...

  • 抽象类和接口的异同

    相同点 * 都不能被直接实例化,都可以通过继承实现其抽象方法。 * 都是面向抽象编程的技术基础,实现了诸多的设计模...

  • 抽象类和接口的异同

    抽象类 1.抽象类用abstract来修饰,它在关键字class前面。2.抽象类无法实例化。3.类的功能仍然存在,...

  • 抽象类和接口的异同

    相同点: 都不能创建对象,都可以有抽象方法 不同点: 抽象类中也可以有普通方法, 接口中都是抽象方法; 抽象类单继...

  • 接口和抽象类的异同

    相同点: 均可定义抽象方法 不同点: 抽象类中可以有抽象方法用abstract修饰, 不可用private. 也可...

  • 问题汇总

    8.291.抽象类和接口的异同答:相同点:都不能创建对象,都可以有抽象方法不同点:抽象类中也可以有普通方法,接口中...

  • Java编程——接口和抽象类

    在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。两者有着许多大异同。 一、抽象类 在了解抽象类之前...

  • 27号c#总结

    27号 接口,接口的声明,成员,实现与继承,接口与抽象类的异同。接口是引用类型,是一系列需要实现的功能的定义。接口...

  • 抽象类和接口的异同、区别

    抽象类和接口的定义 抽象类:关键字abstract修修饰的类称为抽象类,抽象类是一种没有完全实现的类,它的主要用途...

  • 抽象类和接口的异同点

    抽象类 接口

网友评论

    本文标题:接口和抽象类的异同

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