【问题标题】:what is main/major difference between interface and abstract class in oopoop中接口和抽象类之间的主要/主要区别是什么
【发布时间】:2018-10-19 07:26:16
【问题描述】:

我在很多面试中都遇到过这个问题,但在这里我很想知道面向对象编程中接口和抽象类之间的巨大区别。

有人在吗?

【问题讨论】:

标签: oop interface abstract-class


【解决方案1】:

界面: 1.接口不是类 2.接口使用——数据抽象,未来实现。 3. 接口只包含抽象成员。 4.Interface 包含声明,实现它的类必须在其上定义/添加逻辑。

抽象类 1.抽象类是一个类 2.抽象类用于基类。 3. 抽象类同时包含抽象+普通成员 4.抽象成员只有声明(如接口),而普通成员正在定义。

【讨论】:

    【解决方案2】:

    接口和抽象类的一个主要区别是:

    如果接口包含 9 个方法并且我们实现了该接口,那么我们需要覆盖类中的所有 9 个方法。

    如果我们采用一个抽象类并扩展该抽象类,则无需覆盖所有 9 种方法,只覆盖我们需要的方法。

    【讨论】:

      【解决方案3】:

      主要区别在于,在接口中我们只能定义方法和变量,并在通过覆盖实现它的地方给出主体/值。 其中抽象类具有普通类和接口的属性。我们可以将变量和方法抽象为接口,也可以在同一个类中添加带有body/value的变量和方法。

      【讨论】:

        猜你喜欢
        • 2011-04-04
        • 2015-08-22
        • 2015-08-06
        • 2011-03-06
        • 2013-12-23
        • 2017-04-28
        • 2011-04-14
        • 2010-09-17
        • 2021-11-30
        相关资源
        最近更新 更多