Java 中抽象类(Abstract Class)和接口(Interface)的区别是什么?
What's the difference between an Abstract Class and Interface in Java?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: medium
分类: OOP
标签: Abstract Class, Interface, Inheritance
参考答案摘要
答案 抽象类与接口的主要区别是:接口只能拥有 public static 方法的声明且没有具体实现,而抽象类可以拥有任何访问修饰符(public、private 等)的成员,并且可以有或没有具体实现。 另一个关键区别是:实现接口的类必须实现接口中的所有方法;而继承抽象类的类不需要实现其父类中的所有方法。 一个类可以实现多个接口,但只能继承一个抽象类。
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。