Java反射机制

作者在 2014-02-19 16:06:35 发布以下内容




/**



 * 功能:java的反射机制



 * 可以检测到你说定义的类型里面包括的有多少种方法,方法的名字是什么,返回值是什么等



 * 这样一系列信息。都可以得到(说白了就是,通过放射机制我们可以拿到一个类的很多很多机制,提高代码的重用率,增加安全性)



 * 作者:徐守威



 *



 */



package com.test1;





import java.lang.reflect.Method;





public class T2 {





   /**



    * @param args



    */



   public static void main(String[] args) {



      // TODO Auto-generated
method stub



      //Gen<String> gen1=new
Gen<String>("xushouwei");



      //Gen<Integer> gen1=new
Gen<Integer>(888888);



      Gen<Bird> gen1=new Gen<Bird>(new Bird());



      gen1.showTypeName();



   }





}



//定义一个鸟类



class Bird



{



   public void test1()



   {



      System.out.println("Jasxu");



   }



   public void count(int a,int b)



   {



      System.out.println(a+b);



   }



}



//定义一个类



class Gen<T>//这里的T就可以表示任意一个你定义好的数据类型



{



   private T o;



   //构造函数



   public Gen(T a)



   {



      this.o=a;



   }



   //得到T的类型名称



   public void showTypeName()



   {



      System.out.println("T的类型是:"+o.getClass().getName());



      //通过反射机制,我们可以得到T这个类型的很多信息(比如得到它的成员函数名)



      Method []m=o.getClass().getDeclaredMethods();



      //遍历,打印



      for(int i=0;i<m.length;i++)



      {



        System.out.println(m[i].getName());



      }



   }



}



默认分类 | 阅读 1014 次
文章评论,共0条
游客请输入验证码
浏览18256次
文章分类
最新评论