Java 用反射設(shè)置對象的屬性值實例詳解
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | /** * 用反射設(shè)置對象的屬性值 * @param obj 需要設(shè)置值的對象 * @param fieldName 需要設(shè)置值的屬性 * @param value 需要設(shè)置的值 * @return 設(shè)置值后的對象 */ private Object invoke(Object obj, String fieldName, Object value) { String firstWord = fieldName.substring( 0 , 1 ).toUpperCase(); String methodName = String.format( "set%s%s" , firstWord, fieldName.substring( 1 )); Method method = obj.getClass().getMethod(methodName, value.getClass()); method.invoke(obj, value); return obj; } |
Java 反射 創(chuàng)建對象的方法
1、通過Class對象的newInstance()方法,這種方法的局限是只能取調(diào)用默認(rèn)的構(gòu)造函數(shù)
2、通過取得Class對象的getConstructor方法取得Construtor對象,然后再通過調(diào)用Constructor類的newInstance的兩個方法
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
原文鏈接:https://my.oschina.net/Kxvz/blog/417343