zoukankan      html  css  js  c++  java
  • Java反射机制

     

    /**

     * 功能: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());

          }

       }

    }

  • 相关阅读:
    欧拉函数(线性筛)(超好Dong)
    欧拉函数(线性筛)(超好Dong)
    线性素数筛(欧拉筛)(超级好的MuBan)
    线性素数筛(欧拉筛)(超级好的MuBan)
    Fire Game (FZU 2150)(BFS)
    Fire Game (FZU 2150)(BFS)
    Fantasy of a Summation (LightOJ
    Java——接口
    Java——异常处理
    Java——数组
  • 原文地址:https://www.cnblogs.com/Jasxu/p/Reflect.html
Copyright © 2011-2022 走看看