gpt4 book ai didi

java - 为什么在类声明中 "extends"在 "implements"之前

转载 作者:IT老高 更新时间:2023-10-28 20:43:42 26 4
gpt4 key购买 nike

为什么在类声明中implement总是写在extend之后?例如:

public class Register extends ActionSupport implements ModelDriven

为什么不能:

public class Register implements ModelDriven extends ActionSupport 

后者会产生编译时错误。

最佳答案

当 Java 编译器将类转换为字节码时,它必须首先查找父类。那是因为类的底层实现是指向父类的字节码——它包含相关的方法和字段。然后它添加了指向子类函数代码的指针——其中一些是由“implements”关键字强制执行的。

因为父类必须是可编译的,所以如果编译器预先知道该类是什么就更容易了。此外,您只能扩展一个类,但可以实现任意数量的接口(interface)。如果可以在任意数量的实现指令中混合使用 extends 关键字,则编译时间会增加。编译器希望尽快失败以减少开发时间,因此这种选择是合乎逻辑的。此外,出于同样的原因,它还可以帮助您清楚地思考类(class)。

关于java - 为什么在类声明中 "extends"在 "implements"之前,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10538010/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com