我在很多采访中都面对这个问题,但在这里我完全想知道面向对象编程中接口和抽象类之间的巨大差异。
有人吗?
答案 0 :(得分:0)
接口: 1.接口不是类 2.接口使用 - 数据抽象,未来实施。 3.接口仅包含抽象成员。 4.Interface包含声明,实现它的类必须在其上定义/添加逻辑。
抽象类 1.抽象类是一个类 2.抽象类用于基类。 3.抽象类包含Abstract + normal成员 4.抽象成员只有声明(如Interface),但普通成员正在定义。
答案 1 :(得分:0)
接口和抽象类的主要区别是:
如果接口包含9个方法,并且我们实现了该接口,则需要重写类中的所有9个方法。
如果我们采用一个抽象类,并且扩展了该抽象类,则无需覆盖所有9个方法,而仅覆盖所需的那个方法。
答案 2 :(得分:0)
主要区别在于在接口中我们只能定义方法和变量,并在通过覆盖实现的地方给出主体/值。 其中抽象类具有普通类和接口的属性。我们可以像接口一样将变量和方法抽象化,也可以在同一个类中添加带有body/value的变量和方法。