在JLS Sec 8.4.3.6, synchronized
methods中,它说:
这对我来说看起来很奇怪,更不用说过于复杂了:为什么要使用Class.forName("BumpTest")
而不是BumpTest.class
?毕竟,不可能加载BumpTest
,因为它正在执行该类中的代码。并按原样编写,必须捕获并吞下已检查的ClassNotFoundException
。
是否有特定理由以这种方式编写它?
最佳答案
它似乎只是一个非常古老的示例,比类文字还早。在引入类文字之前,该示例出现在JLS 1.0中。
关于java - 为什么要使用Class.forName ("BumpTest"),而不是BumpTest.class?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47044310/