JavaBean屬性方法反射

來源:互聯網
上載者:User

要求jdk1.5以上

public class ReflectPoint {public int x;public int y;public ReflectPoint(int x, int y) {super();this.x = x;this.y = y;}public int getX() {return x;}public void setX(int x) {this.x = x;}public int getY() {return y;}public void setY(int y) {this.y = y;}}

public class ReflectPoint {public int x;public int y;public ReflectPoint(int x, int y) {super();this.x = x;this.y = y;}public int getX() {return x;}public void setX(int x) {this.x = x;}public int getY() {return y;}public void setY(int y) {this.y = y;}}import java.beans.IntrospectionException;import java.beans.PropertyDescriptor;import java.lang.reflect.Field;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;public class IntroSpectorTest {/*** @param args*/public static void main(String[] args) throws Exception{ReflectPoint rp = new ReflectPoint(1,2);getProperties(rp);getProperties2(rp);Object y = 7;SetProterties(rp, y);}//用反射獲得指定JAVABean屬性的值private static void getProperties(ReflectPoint rp)throws Exception {Field field = rp.getClass().getDeclaredField("x");System.out.println(field.get(rp));;}//用反射設定指定JAVABean屬性的值private static void SetProterties(Object rp, Object y)throws Exception{PropertyDescriptor pd2 = new PropertyDescriptor("y",rp.getClass());Method method = pd2.getWriteMethod();method.invoke(rp, y);System.out.println(((ReflectPoint) rp).getY());}//用反射獲得指定JAVABean屬性的值private static void getProperties2(Object rp)throws Exception{PropertyDescriptor pd = new PropertyDescriptor("x",rp.getClass());Method methodGetx = pd.getReadMethod();Object retvalx = methodGetx.invoke(rp);System.out.println(retvalx.getClass().getName());}}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.