0
static boolean isClassLoaded(String fullname) {
try {
Class.forName(fullname, false, Loader.instance().getModClassLoader());
return true;
} catch (Exception e) {
return false;
}
}
這個方法是否有可能觸發全名的靜態初始化器? 我有問題與靜態初始化器調用兩次。 當我嘗試檢查類是否使用isClassLoaded加載並嘗試使用該類時,由於構造函數調用兩次而出現錯誤。 任何人都知道什麼是Class.forName(全名,假,Loader.instance()。getModClassLoader())的問題; ?java靜態初始化器被調用兩次
目前還不清楚'Loader.instance()。getModClassLoader()'來自哪裏以及它的作用。此外,你正在討論一個「構造函數被調用兩次」,而不是什麼類的構造函數,以及它與你的問題標題的「靜態intitializer」如何相關。 – Holger
我可以用ThisClass.class.getClassLoader()替換它們。 – MCdevelopers
在這種情況下,不應該調用初始化程序,並且無論構造函數發生什麼異常都與靜態初始化程序無關。 – Holger