久久久久无码精品,四川省少妇一级毛片,老老熟妇xxxxhd,人妻无码少妇一区二区

SUN認證考試知識點:Java反射機制的應(yīng)用

時間:2024-08-11 16:09:41 SUN認證 我要投稿
  • 相關(guān)推薦

SUN認證考試知識點:Java反射機制的應(yīng)用

  目標:用一個代理類實現(xiàn)兩個相似類的調(diào)用

SUN認證考試知識點:Java反射機制的應(yīng)用

  1.兩個相似類

  Man類

  Women類:

  代理類:

  package Reflect;

  import java.lang.reflect.Method;

  public class Person { //代理類

  private Object target; //目標對象

  private String methodName; //目標方法

  private Object[] params; //參數(shù)數(shù)組

  private Method method;

  public Object getTarget() {

  return target;

  }

  public void setTarget(Object target) {

  this.target = target;

  }

  public String getMethodName() {

  return methodName;

  }

  public void setMethodName(String methodName) {

  this.methodName = methodName;

  }

  public Object[] getParams() {

  return params;

  }

  public void setParams(Object[] params) {

  this.params = params;

  }

  public Person(){

  }

  /**

  * _重新設(shè)置目標方法

  */

  private void reSetMethod(String methodName){

  if(params!=null){ //目標方法有參數(shù)

  int paramsLength = params.length;

  Class[] paramsTypes = new Class[paramsLength];

  for(int i=0;i

  paramsTypes[i] = params[i].getClass();

  }

  try {

  method = target.getClass().getMethod(methodName,paramsTypes);

  } catch (SecurityException e) {

  e.printStackTrace();

  } catch (NoSuchMethodException e) {

  e.printStackTrace();

  }

  }

  else //目標方法參數(shù)為null

  {

  try {

  method = target.getClass().getMethod(methodName,null);

  } catch (SecurityException e) {

  e.printStackTrace();

  } catch (NoSuchMethodException e) {

  e.printStackTrace();

  }

  }

  }

  /**

  * _重新設(shè)置目標對象和方法

  */

  private void reSetTarget(Object target,String methodName){

  this.target = target;

  this.reSetMethod(methodName);

  }

  /**

  * _動態(tài)調(diào)用已綁定方法

  */

  public void doMethod() throws Exception{

  reSetTarget(target,methodName);

  this.method.invoke(target, params);

  }

  }

【SUN認證考試知識點:Java反射機制的應(yīng)用】相關(guān)文章:

sun java認證考試介紹10-23

Sun java認證考試答案11-06

Sun Java認證考試科目08-30

sun java認證考試報考指南10-18

SUN JAVA認證介紹08-09

SUN認證考試知識點:java servlet生命周期09-25

Sun認證Java開發(fā)員考試介紹10-09

sun認證考試:Java.io的使用08-23

Sun Java認證考試教材教輔09-13

Sun java認證考試真題答案09-25