打卡-反射(一)
简单了解反射
1 class Person { 2 String name; 3 int age; 4 public void setName(String name) { 5 this.name = name; 6 } 7 public void setAge(int age) { 8 this.age = age; 9 } 10 public Person(String name, int age) { 11 super(); 12 this.name = name; 13 this.age = age; 14 } 15 public Person() { 16 super(); 17 } 18 19 } 20 21 public class work_fanse { 22 23 public static void main(String[] args) { 24 /* 25 * 得到Class对象 26 * –Class 对象只能由系统建立对象 27 * –一个类在 JVM 中只会有一个Class实例,,一个类(而不是一个对象)在 JVM 中只会有一个Class实例 28 * –每个类的实例都会记得自己是由哪个 Class 实例所生成 29 * -Class是用来描述类的类 30 */ 31 Class calzz=Person.class; 32 System.out.println("该类的存放位置为:"+calzz.getPackage()); 33 System.out.println("该类的名称为:"+calzz.getName()); 34 System.out.println("该类继承的类为:"+calzz.getSuperclass()); 35 System.out.println("该类实现的所有的接口为:"+calzz.getInterfaces()); 36 System.out.println("该类的构造方法为:"+calzz.getConstructors()); 37 System.out.println("该类Public的构造方法为:"+calzz.getMethods()); 38 System.out.println(); 39 40 } 41 42 } 43 //String str1="abc"; 44 //Class<?> cls=str1.getClass(); 45 //try { 46 // Class<?> cls2=Class.forName("str1"); 47 //} catch (ClassNotFoundException e) { 48 // e.printStackTrace(); 49 //} 50 /* 51 * 通过反射可访问的注销描述信息 52 */