现在时间是:

Android之反照机制与bet36体育在线

时间:2018-09-23 来源:未知 作者:admin 点击:加载中..
  

  【

  Java的初级特点:反照机制

  publicclass Student {

  ?

   public String name;

   private int age;

  

   public Student() {

  ?

   }

   public Student(String name, int age) {

   this.name=name;

   this.age=age;

   }

  

   //动态代码块,条在类被加以载的时分实行壹次

   static{

   System.out.println("Student类被加以载......");

   }

  

   public void test(){

   System.out.println(name+"...test...");

   }

   public void test(int num){

   System.out.println(name+"...test..."+num);

   }

   public void test2(){

   System.out.println(name+"..test2...");

   }

   @Override

   public String toString() {

   return "Student[name=" + name + ", age=" + age + "]";

   }

  

  }

  publicclass ReflectDemo {

   public static void main(String[] args)throws Exception {

  

   // 第壹次运用Student类,杜撰时间先加以载此雕刻个类,生成对应的Class对象

   Student stu=new Student();

   // 第二次运用Student类,就会骈用上壹次加以载度过的类的Class对象

   Student stu2=new Student();

   ?// 1、获取Class对象

   // 方法壹:经度过getClass方法

   Class classzz=stu.getClass();

   Class classzz2=stu2.getClass();

   System.out.println(classzz==classzz2);? //前往true

   //方法二:类名.class

   Class classzz3=Student.class;

   System.out.println(classzz==classzz3);? //前往true

   //方法叁:经度过Class.forName()方法

   Class classzz4=Class.forName("bo.Student");

   System.out.println(classzz==classzz4); //前往true

  

   //2、获取类名

   //String className=classzz.getName();

   String className=stu.getClass().getName();

   System.out.println("类名:"+className); //前往类名:bo.Student

  

   //3、获取构造方法

   //获取无参构造器

   Constructor c1=classzz.getConstructor();

   //获取带参构造方法

   Constructor c2=classzz.getConstructor(String.class,int.class);

   //经度过构造器创立并初始募化对象

   //Student stu3=(Student)c1.newInstance();

   Student stu3=(Student)c2.newInstance("小强大",18);

   System.out.println("stu3"+stu3);? //stu3Student [name=小强大, age=18]

(责任编辑:admin)

------分隔线----------------------------
最新评论 查看所有评论
加载中......
发表评论 查看所有评论