【前面的话】
在实际项目中学习知识总是最快和最有效的,既能够较好的掌握知识,又能够做出点东西,还是简单的知识总结,最近一直在总结笔记,写的东西还是比较水,希望慢慢可以写出一些干货。
学习过程中的小知识点总结,基础文章,选择阅读。
【知识汇总】
一、获取一个类中方法的详细信息
1. getDeclaredMethods()方法和getMethods()的区别
1)getDeclaredMethod*()获取的是类自身声明的所有方法,包含public、protected和private方法。
2)getMethod*()获取的是类的所有共有方法,这就包括自身的所有public方法,和从基类继承的、从接口实现的所有public方法。
2. 如何得到一个类的方法的详细信息,下面的代码就是获得一个类的:
1)方法的名字
2)参数的类型
3)方法的返回值的类型
4)方法的修饰符有
5)方法的异常类型
3. 代码介绍:
1)ModifiersText.java实现获取Text类方法的信息
2)Test.java测试类
4. 代码:
1)ModifiersText.java
1 importjava.lang.reflect.Method;2 importjava.lang.reflect.Modifier;3
4 public classModifiersText {5 public static void main(String[] args) throwsException {6 Class c=Class.forName("Test");7 //-------------------获取方法的详细信息8 //-------------------测试函数getDeclaredMethods()
9 Method m[]=c.getDeclaredMethods();10
11 for(int i=0;i
14 System.out.println("getDeclaredMethods()获得的方法的名字是:"+m[i].getName());15
16 //--------------------获得方法参数的类型和有几个参数
17 Class b[]=m[i].getParameterTypes();//获得所有的参数并且存放到数组B中
18 for(int j=0;j
22 //--------------------获得方法返回值的类型
23 System.out.println("getDeclaredMethods()获得的方法的返回值的类型"+m[i].getReturnType());//获得方法的返回值类型24
25 //--------------------获得方法的修饰符
26 int mod=m[i].getModifiers();27 System.out.println("getDeclaredMethods()获得的方法的修饰符有"+Modifier.toString(mod));28
29 //--------------------获得方法的异常类型
30 Class e[]=m[i].getExceptionTypes();//获得所有的异常类型存放到数组e中
31 for(int k=0;k
35 System.out.println("-------------------------------------------------------------------");36 }37
38 //-------------------获取方法的详细信息39 //-------------------测试函数getMethods()
40 Method n[]=c.getMethods();41
42 for(int i=0;i
45 System.out.println("getMethods()获得的方法的名字是:"