我java.lang.String
在java中创建了具有限定名称的类。
package java.lang;
public class String {
public int getValue() {
return 42;
}
}
在主类中,我添加了以下代码。
public class Main {
public static void main(String[] args) {
String s = new String();
System.out.println(s.getValue());
}
}
代码编译得很好。当我运行代码时,它失败并出现以下错误。
Exception in thread "main" java.lang.NoSuchMethodError: java.lang.String.getValue()I
at com.Main.main(Main.java:12)
我必须了解它java.lang.String
是由引导类加载器在运行时从 rt.jar 文件加载的。
所以,我认为类加载的顺序在编译时和运行时应该是不同的。您能否在编译时和运行时给出类加载的顺序。