程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Java反射之經由過程反射獲得一個對象的辦法信息(實例代碼)

Java反射之經由過程反射獲得一個對象的辦法信息(實例代碼)

編輯:關於JAVA

Java反射之經由過程反射獲得一個對象的辦法信息(實例代碼)。本站提示廣大學習愛好者:(Java反射之經由過程反射獲得一個對象的辦法信息(實例代碼))文章只能為提供參考,不一定能成為您想要的結果。以下是Java反射之經由過程反射獲得一個對象的辦法信息(實例代碼)正文


以下代碼為一個對象類

package com.imooc.reflect;

import java.lang.reflect.Method;

public class ClassUtil {
	
	public static void printClassMessage(Object obj){
		//要獲得類的信息,起首要獲得類的類類型
		Class c = obj.getClass();//傳遞的是哪一個子類的對象,c就是該子類的類類型
		//獲得類的稱號
		System.out.println("類的稱號為:"+c.getName());
		/*
		 * Method類,辦法對象
		 * 一個成員辦法就是一個Method對象
		 * getMethods()辦法獲得的是一切的public的函數,包含父類繼續而來的
		 * getDeclaredMethods()獲得的是一切該類本身聲明的辦法,部位拜訪權限
		 */
		Method[] methods = c.getMethods();
		//
		for(int i=0;i<methods.length;i++){
			//獲得辦法的前往值類型的類類型
			Class returnType = methods[i].getReturnType();
			
			System.out.print(returnType.getName()+" ");
			//獲得辦法的稱號
			System.out.print(methods[i].getName()+"(");
			//獲得參數類型--》獲得的參數列表的類型de類類型
			Class[] paramType = methods[i].getParameterTypes();
			for(Class class1:paramType){
				System.out.print(class1.getName()+",");
			}
			System.out.println(")");
		}
	}

}
//output:
	//類的稱號為:java.lang.String
	//boolean equals(java.lang.Object,)
	//java.lang.String toString()
	//int hashCode()
//.......

以下代碼為測試類:

package com.imooc.reflect;

public class TestClassUtil {

	public static void main(String[] args) {
		String string = "hello";
		ClassUtil.printClassMessage(string);
		
		Integer n1 = 1;
		ClassUtil.printClassMessage(n1);
	}
}

截圖以下:

 

以上就是小編為年夜家帶來的Java反射之經由過程反射獲得一個對象的辦法信息(實例代碼)的全體內容了,願望對年夜家有所贊助,多多支撐~

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved