我明白:
- 由于抽象类本身什么都不是,例如车辆,我们想创建一个具体实现的对象,如 Car、Bike 等。
- 抽象类的构造函数在对象链接期间被调用。
- 我们永远不能直接创建抽象类的对象,即使它包含构造函数并且所有方法都已实现。
但是从编译器的角度来看,Java 为什么要强制执行这些规则呢?
原文由 sandejai 发布,翻译遵循 CC BY-SA 4.0 许可协议
我明白:
但是从编译器的角度来看,Java 为什么要强制执行这些规则呢?
原文由 sandejai 发布,翻译遵循 CC BY-SA 4.0 许可协议
4 回答1.1k 阅读✓ 已解决
4 回答825 阅读✓ 已解决
1 回答2.5k 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
2 回答1.6k 阅读✓ 已解决
2 回答664 阅读✓ 已解决
2 回答1.6k 阅读
这不是技术限制,而是(正如您所指出的)逻辑限制。 Java(和许多其他语言)强制执行各种规则,不是因为它们不可能被打破,而是因为这是语言的有意部分。