简介Cass与类别载入 一个类别在JM中只会有一个Cass实例 每个类别的实例都会记得自己是由哪个 Cass实例所生成 可使用 getClass0或cass来取得 Class实例 class java. lang String getc|ass0 String物件 stng物件9ecas9 String物件 getclass
简介Class与类别载入 • 一个类别在JVM中只会有一个Class实例 • 每个类别的实例都会记得自己是由哪个 Class实例所生成 • 可使用getClass()或.class来取得Class实例
简介C|ass与类别载人 数组是一个对象,也有其对应的Cas实例 System. out. println(boolean class)i System. out. println(void. class)i int[] iarr new int [10]i System. out. println(iarr getClass(). tostring()) double[ darr new double [10] System. out. println(darr. getclass(). tostring()) boolean void class [i class [d
简介Class与类别载入 • 数组是一个对象,也有其对应的Class实例 System.out.println(boolean.class); System.out.println(void.class); int[] iarr = new int[10]; System.out.println(iarr.getClass().toString()); double[] darr = new double[10]; System.out.println(darr.getClass().toString()); boolean void class [I class [D
从 Class中获取信息 Class对象表示所加载的类别,取得 Class 对象之后,您就可以取得与类别相尖联的 信 套件的对应型态是 java. lang Package 建构方法的对应型态是 java. lang reflect Constructor 方法成员的对应型态是 java. lang. reflect Method 数据成员的对应型态是 java. lang reflect Field
从Class中获取信息 • Class对象表示所加载的类别,取得Class 对象之后,您就可以取得与类别相关联的 信息 – 套件的对应型态是java.lang.Package – 建构方法的对应型态是 java.lang.reflect.Constructor – 方法成员的对应型态是 java.lang.reflect.Method – 数据成员的对应型态是java.lang.reflect.Field
从 Class中获取信息 ry Class c =Class forName(args[o])i Package p =c. getPackage()i System. out. println(p getName())i catch(Array IndexOutofBoundsException e) System.out. print1n("没有指定类别"); catch(ClassNotFoundException e)t System.out. print1n("找不到指定类别")
从Class中获取信息 try { Class c = Class.forName(args[0]); Package p = c.getPackage(); System.out.println(p.getName()); } catch(ArrayIndexOutOfBoundsException e) { System.out.println("没有指定类别"); } catch(ClassNotFoundException e) { System.out.println("找不到指定类别"); }
从 Class中获取信息 Class c= Class. forName(args[o]) //取得套件代表对象 Package p getPackage( System. out. printf( package sion",p getName())i //取得型态修饰’像是c1ass丶 interface nt m retModifiers ( System. out.print(Modifier tostring(m)+)i //如果是接口 if(Modifier. isInterface(m)) System. out. print(interface)i e⊥se System. out. print (" class )i System. out. println(c getName()+ f")
从Class中获取信息 Class c = Class.forName(args[0]); //取得套件代表对象 Package p = c.getPackage(); System.out.printf("package %s;%n", p.getName()); //取得型态修饰,像是class、interface int m = c.getModifiers(); System.out.print(Modifier.toString(m) + " "); //如果是接口 if(Modifier.isInterface(m)) { System.out.print("interface "); } else { System.out.print("class "); } System.out.println(c.getName() + " {");