findSystemClass()
方法findSystemClass()方法在java.lang包中可用。
findSystemClass()方法用于查找具有给定二进制名称的类,并在需要时通过系统加载器加载该类。
findSystemClass()方法是一个非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
在使用给定类查找类时,findSystemClass()方法可能会引发异常。
ClassNotFoundException:如果给定的类不存在,则可能引发此异常。
语法:
protected Class findSystemClass(String class_name);
参数:
字符串class_name –表示类的二进制名称。
返回值:
该方法的返回类型为Class,它返回给定类名的Class对象。
示例
//Java程序演示示例 //类findSystemClass(String class_name) //ClassLoader的方法 class FindSystemClass extends ClassLoader { void loadedSystemClass() throws ClassNotFoundException { //它检查给定的类是否已加载 //是否使用findSystemClass() Class cl1 = super.findSystemClass("java.lang.String"); //如果cl1不为null,则表示已加载cl1- //然后不需要再次加载 if (cl1 != null) System.out.println("Class already loaded!!!"); else System.out.println("Ready to load the given class by using system classloader!!!"); } } public class Main { public static void main(String[] args) throws Exception { //创建一个FindSystemClass的实例 FindSystemClass sc = new FindSystemClass(); sc.loadedSystemClass(); } }
输出结果
Class already loaded!!!