亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java反射之通過(guò)反射獲取一個(gè)對(duì)象的方法信息(實(shí)例代碼)

 更新時(shí)間:2016年10月02日 09:53:45   投稿:jingxian  
下面小編就為大家?guī)?lái)一篇Java反射之通過(guò)反射獲取一個(gè)對(duì)象的方法信息(實(shí)例代碼)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

以下代碼為一個(gè)工具類(lèi)

package com.imooc.reflect;

import java.lang.reflect.Method;

public class ClassUtil {
	
	public static void printClassMessage(Object obj){
		//要獲取類(lèi)的信息,首先要獲取類(lèi)的類(lèi)類(lèi)型
		Class c = obj.getClass();//傳遞的是哪個(gè)子類(lèi)的對(duì)象,c就是該子類(lèi)的類(lèi)類(lèi)型
		//獲取類(lèi)的名稱(chēng)
		System.out.println("類(lèi)的名稱(chēng)為:"+c.getName());
		/*
		 * Method類(lèi),方法對(duì)象
		 * 一個(gè)成員方法就是一個(gè)Method對(duì)象
		 * getMethods()方法獲取的是所有的public的函數(shù),包括父類(lèi)繼承而來(lái)的
		 * getDeclaredMethods()獲取的是所有該類(lèi)自己聲明的方法,部位訪(fǎng)問(wèn)權(quán)限
		 */
		Method[] methods = c.getMethods();
		//
		for(int i=0;i<methods.length;i++){
			//得到方法的返回值類(lèi)型的類(lèi)類(lèi)型
			Class returnType = methods[i].getReturnType();
			
			System.out.print(returnType.getName()+" ");
			//得到方法的名稱(chēng)
			System.out.print(methods[i].getName()+"(");
			//獲取參數(shù)類(lèi)型--》得到的參數(shù)列表的類(lèi)型de類(lèi)類(lèi)型
			Class[] paramType = methods[i].getParameterTypes();
			for(Class class1:paramType){
				System.out.print(class1.getName()+",");
			}
			System.out.println(")");
		}
	}

}
//output:
	//類(lèi)的名稱(chēng)為:java.lang.String
	//boolean equals(java.lang.Object,)
	//java.lang.String toString()
	//int hashCode()
//.......

以下代碼為測(cè)試類(lèi):

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);
	}
}

截圖如下:

 

以上就是小編為大家?guī)?lái)的Java反射之通過(guò)反射獲取一個(gè)對(duì)象的方法信息(實(shí)例代碼)的全部?jī)?nèi)容了,希望對(duì)大家有所幫助,多多支持腳本之家~

相關(guān)文章

最新評(píng)論