最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java如何基于反射獲取對象屬性信息

 更新時間:2020年10月19日 15:35:39   作者:cuisuqiang  
這篇文章主要介紹了Java如何基于反射獲取對象屬性信息,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

先建立一個類,有四種屬性:

private int id;
private String name;
private byte by;
private short st;

以下方法,創(chuàng)建一個對象,然后打印該對象的屬性名字,屬性值,和屬性的類型:

public class T {
	public static void main(String[] args) throws Exception {
		User u = new User();
		u.setId(1);
		u.setName("cc");
		u.setBy((byte)1);
		u.setSt((short)2);
		getProperty(u);
	}
	/**
	 * 獲得一個對象各個屬性的字節(jié)流
	 */
	@SuppressWarnings("unchecked")
	public static void getProperty(Object entityName) throws Exception {
		Class c = entityName.getClass();
		Field field[] = c.getDeclaredFields();
		for (Field f : field) {
			Object v = invokeMethod(entityName, f.getName(), null);
			System.out.println(f.getName() + "\t" + v + "\t" + f.getType());
		}
	}
	/**
	 * 獲得對象屬性的值
	 */
	@SuppressWarnings("unchecked")
	private static Object invokeMethod(Object owner, String methodName,
			Object[] args) throws Exception {
		Class ownerClass = owner.getClass();
		methodName = methodName.substring(0, 1).toUpperCase()
				+ methodName.substring(1);
		Method method = null;
		try {
			method = ownerClass.getMethod("get" + methodName);
		} catch (SecurityException e) {
		} catch (NoSuchMethodException e) {
			return " can't find 'get" + methodName + "' method";
		}
		return method.invoke(owner);
	}
}

打印結(jié)果如下:

id 1 int
name cc class java.lang.String
by 1 byte
st 2 short

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java獲得元素屬性的注解信息的步驟

    Java獲得元素屬性的注解信息的步驟

    在Java編程中,注解是一種為代碼添加元數(shù)據(jù)的方式,通過反射機制,我們可以獲取元素屬性上的注解信息,這個過程對于框架開發(fā)和元數(shù)據(jù)處理非常有用,能夠?qū)崿F(xiàn)更靈活的功能,對java獲得元素屬性的注解信息相關(guān)知識感興趣的朋友一起看看吧
    2024-09-09
  • += 和 ++ 操作符區(qū)別簡單介紹

    += 和 ++ 操作符區(qū)別簡單介紹

    這篇文章主要介紹了+= 和 ++ 操作符區(qū)別簡單介紹的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-09-09
  • futuretask源碼分析(推薦)

    futuretask源碼分析(推薦)

    這篇文章主要介紹了futuretask源碼分析(推薦),小編覺得還是挺不錯的,這里給大家分享下,供各位參考。
    2017-10-10
  • Java編寫的實體返回VO工具

    Java編寫的實體返回VO工具

    VO(value object)通常用于業(yè)務(wù)層之間的數(shù)據(jù)傳遞,VO的屬性是根據(jù)當前業(yè)務(wù)的不同而不同的,也就是說,它的每一個屬性都一一對應(yīng)當前業(yè)務(wù)邏輯所需要的數(shù)據(jù)的名稱。本文將介紹如何將實體轉(zhuǎn)換為vo對象
    2021-05-05
  • java中map與實體類的相互轉(zhuǎn)換操作

    java中map與實體類的相互轉(zhuǎn)換操作

    這篇文章主要介紹了java中map與實體類的相互轉(zhuǎn)換操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • SpringBoot單元測試沒有執(zhí)行的按鈕問題及解決

    SpringBoot單元測試沒有執(zhí)行的按鈕問題及解決

    這篇文章主要介紹了SpringBoot單元測試沒有執(zhí)行的按鈕問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • java連接mysql數(shù)據(jù)庫實現(xiàn)單條插入和批量插入

    java連接mysql數(shù)據(jù)庫實現(xiàn)單條插入和批量插入

    這篇文章主要為大家詳細介紹了java連接mysql數(shù)據(jù)庫實現(xiàn)單條插入和批量插入,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • 使用java.nio.file?庫優(yōu)雅的操作文件詳解

    使用java.nio.file?庫優(yōu)雅的操作文件詳解

    這篇文章主要介紹了使用java.nio.file?庫優(yōu)雅的操作文件詳解,需要的朋友可以參考下
    2023-05-05
  • idea安裝hsdis的方法

    idea安裝hsdis的方法

    這篇文章主要介紹了idea安裝hsdis,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • 如何利用Java在圖片上添加文字水印效果

    如何利用Java在圖片上添加文字水印效果

    最近發(fā)現(xiàn)經(jīng)常被別的網(wǎng)站盜用,而且不注明出處,因此不得不加上水印,這篇文章主要給大家介紹了關(guān)于如何利用Java在圖片上添加文字水印效果的相關(guān)資料,需要的朋友可以參考下
    2022-01-01

最新評論

永清县| 永城市| 彩票| 武强县| 吉安市| 永昌县| 汾西县| 邻水| 普兰店市| 永州市| 平潭县| 沈丘县| 清徐县| 长沙市| 长沙市| 会理县| 贡山| 翁牛特旗| 桓台县| 龙门县| 吉木乃县| 中江县| 田东县| 庄河市| 广饶县| 遂平县| 河间市| 宝清县| 木里| 香港| 濉溪县| 乌拉特前旗| 瑞丽市| 楚雄市| 同江市| 竹溪县| 婺源县| 互助| 榆树市| 绍兴市| 定边县|