⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testreflection.java

📁 一些简单的java程序。老师很认真
💻 JAVA
字号:
package com.test;
import java.lang.reflect.*;
import com.resource.*;
import java.util.*;
public class TestReflection {
  public static void main(String[] args){
	 try{
	  Class c=Class.forName("com.resource.UserManager");
	  Package p;
	  p=c.getPackage();
	  if (p!=null)
		  System.out.println("package:"+p.getName());
	  
	  Field[] ff=new Field[10];
	  ff=c.getDeclaredFields();
	  for (int i = 0; i < ff.length; i++)
        System.out.println("fields:"+ff[i].getName());
	  
	  Constructor[] cn=c.getDeclaredConstructors();
	  System.out.println(cn.length);
	  if (cn.length!=0)
	  {
	  for (int i = 0; i < cn.length; i++) {
         System.out.println("Constructor:"+cn[i].getName());
	    }
	  }
	  else
		  System.out.println("no constructor");

	  UserManager um=new UserManager();
	  um.addUser(new User("111","lisa","111"));
	  um.addUser(new User("222","tracy","222"));
	  um.addUser(new User("333","tom","333"));
	  Method[] mm=c.getDeclaredMethods();
	  for (int i = 0; i < mm.length; i++) {
         System.out.print("method"+i+": methodName-"+mm[i].getName()+"   returntype-"+mm[i].getReturnType()+"  ");
         Class[] cx= mm[i].getParameterTypes();
         for (int j = 0; j < cx.length; j++)
           System.out.print("parameterType-"+j+"-"+cx[j].getName()+"  ");
         System.out.println();
         if (mm[i].getName().equals("searchUserByNameUnExactly"))
         {
        	 String arg=new String("t");
        	 Object r=mm[i].invoke(um,arg);
        	 Iterator it=((ArrayList)r).iterator();
             while(it.hasNext())
              {
         	    User ut=(User)(it.next());
         	    System.out.println("@@@"+ut.getId()+"  "+ut.getName()+"  "+ut.getPassword());
              }
         }
         
	  }
	 }catch(ClassNotFoundException e){System.out.println("Class not found");}
	 catch(InvocationTargetException e){System.out.println("Invocation Target Exception");}
	 catch(IllegalAccessException e){System.out.println("Illegal Access Exception");}
	  
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -