package com.ccl.reflect;
import java.net.URL;
import com.ccl.algo.Main;
/**
* @dome
*/
public class AllInAll {
public void printModifiers(Object o) {
System.out.println(((Class<?>) o).getName());
Class<?> c = (Class<?>) o;
System.out.println("annotations:" + c.getAnnotations().toString());
System.out.println("name:" + c.getName());
System.out.println("权威的name:" + c.getCanonicalName());
System.out.println(c.desiredAssertionStatus());
Class<?> sc = c.getSuperclass();
while (sc != null) {
System.out.println(sc.getName());
sc = sc.getSuperclass();
}
}
static native void printMethods(Object o);
public void printMethods(Class<?> c) {
}
public static void main(String[] args) throws ClassNotFoundException {
ClassLoader ccl = AllInAll.class.getClassLoader();
System.out.println("ClassLoader parent:" + ccl.getParent());
System.out
.print("Class.forName(className) == ClassLoader.loadClass(className): ");
System.out.println(Class.forName("com.ccl.algo.Main") == ccl
.loadClass("com.ccl.algo.Main"));
System.out.print("就是一个系统加载器: ");
System.out.println(ccl == ClassLoader.getSystemClassLoader());
URL url = ClassLoader.getSystemResource("");
System.out.println(url);
AllInAll all = new AllInAll();
all.printModifiers(Main.T.class);
}
}
ClassLoader 类加载器
最新推荐文章于 2025-03-25 09:36:58 发布