package study;
public class TestReflection {
public static void main(String[] args) throws Exception {
Class c = Class.forName("T"); // 錯誤:缺少包名
}
}
class T { ... }
Class.forName() 參數必須是類的全限定名(包名 + 類名)。示例中類 T 位於 study 包下,故應傳入 "study.T"。若類在默認包(無 package 語句),則可直接用類名,但不推薦使用默認包。
Class c = Class.forName("study.T"); // 加上包名
ClassLoader 使用:Thread.currentThread().getContextClassLoader().loadClass("study.T")。ClassNotFoundException 以處理類不存在的情況。