抽象类和接口有什么区别?
What is the difference between an abstract class and an interface?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: easy
分类: Programming Fundamentals
标签: Abstract Class, Interface, Design
参考答案摘要
答案 抽象类通常作为基类,既可包含抽象方法也可包含具体实现,还能有成员变量和构造函数,用于复用通用行为;接口更像“契约”,定义方法签名(现代语言也可能支持默认方法/静态方法),强调能力组合,一个类可实现多个接口以获得多重“类型”。选型思路:需要共享实现与状态用抽象类;需要约束行为、支持多实现用接口。
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。