Java的反射機制---靜態挪用對象的簡略辦法。本站提示廣大學習愛好者:(Java的反射機制---靜態挪用對象的簡略辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是Java的反射機制---靜態挪用對象的簡略辦法正文
唉!我還真是在面試中進修新東東啊,一個公司方才給了個測試,不外我很奇異的是為何web developer的職位竟然考java的反射機制題,不外進修研討一下反射機制對我來講是件功德啦!
先說說甚麼是java反射機制吧,在運轉狀況中,關於隨意率性一個類,都可以或許曉得這個類的一切屬性和辦法;關於隨意率性一個對象,都可以或許挪用它的隨意率性一個辦法;這 種靜態獲得的信息和靜態挪用對象的辦法的功效稱為java說話的反射機制。重要功效:在運轉時斷定隨意率性一個對象所屬的類;在運轉時結構隨意率性一個類的對 象;在運轉時斷定隨意率性一個類所具有的成員變量和辦法;在運轉時挪用隨意率性一個對象的辦法;生成靜態署理。
然後再留個示例吧。
package com.beidou.test;
import java.lang.reflect.Method;
public class Dynamic {
public static void main(String[] args) throws Exception{
Class c = Dynamic.class;//獲得對象
Method[] methods = c.getDeclaredMethods();//獲得辦法
for(Method method : methods){
System.out.print(method.getName());//打印參數名
Class[] parameterTypes = method.getParameterTypes();
for(int i=0;i<parameterTypes.length;i++){
String nameString=parameterTypes[i].getName();
System.out.print("parameterType:"+nameString);//打印辦法參數類型
}
System.out.print("ReturnType:"+method.getReturnType());
System.out.println();
}
Object obj=c.newInstance();//獲得到辦法對象,假定辦法的參數是一個int,String,method名為getAge
Method sAge = c.getMethod("getAge", new Class[] {int.class,String.class});
//取得參數Object
Object[] arguments = new Object[]{new Integer(23),new String("abc")};
//履行辦法
String s=(String)sAge.invoke(obj , arguments);
System.out.print(s);
}
public String getAge(int age,String name){
return name+": "+age;
}
}
以上這篇Java的反射機制---靜態挪用對象的簡略辦法就是小編分享給年夜家的全體內容了,願望能給年夜家一個參考,也願望年夜家多多支撐。