有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java是ActivityThread中使用的最后一个关键字

正如ActivityThread类的源代码所示,它是一个final类,这个类中的所有方法也是final方法。作为java中的final关键字定义,这个类不能被继承,但是为什么安卓开发人员保留这些方法final

也许我没有把问题表达清楚,我在这里解决了

ActivityThread是一个final类,它不会有任何子类,也不会重写任何方法,但是你知道这个类中的所有方法都是final,我想知道为什么它们需要这些final关键字,它们可以毫无影响地删除它们


共 (1) 个答案

  1. # 1 楼答案

    Java Language Specification表明final类的任何方法都不能被重写。因此,关于这些方法的final声明似乎是多余的。(可能是Android API的测试版遗留下来的,当时ActivityThread可能不是最终类?)

    另一方面,优化器和模糊器有时可以通过声明final的方法做更多的事情。尽管他们应该足够聪明,可以推断最终类不会有任何重写的方法,但给他们额外的提示也无妨