<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Thinking in sky

    --老賀的BLOG

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      21 隨筆 :: 0 文章 :: 35 評論 :: 0 Trackbacks
            系統(tǒng)中需要一個(gè)方法,方法參數(shù)為任意對象,要求找到該對象的所有屬性名和屬性值,當(dāng)然必須要用到反射了。查了會(huì)API,發(fā)現(xiàn)JAVA反射功能果然強(qiáng)大,一下就找到了需要的函數(shù)。
    1//roleVO為RoleVO類的對象, 返回該類的所有屬性的數(shù)組
    2Field[] fields =  roleVO.getClass().getFields();
    3
    4for(i=0; i<fields.length; i++){
    5    //得到 屬性名            
    6    String fieldName = fields[i].getName();
    7
    8       //得到roleVO對象中該屬性的值
    9    int value = fields[i].getInt(roleVO);    
    Field類根據(jù)屬性類型的不同對應(yīng)不同的方法,如getFloat(),getLong(),參數(shù)必須為該類的對象。如果不指定類型也可以:get(),屬性是什么類型它就返回什么類型,其它更詳細(xì)的就要查看API文檔了。
    posted on 2007-05-15 13:28 老賀 閱讀(501) 評論(1)  編輯  收藏 所屬分類: JAVA基礎(chǔ)

    評論

    # re: 畢業(yè)設(shè)計(jì)筆記(3)--反射[未登錄] 2007-08-23 10:50 小賀
    Class的getFields()方法返回此Class 對象所表示的類或接口的所有public屬性。如果該 Class 表示一個(gè)類,則此方法返回該類及其所有超類的public屬性。
    如果該 Class 表示一個(gè)接口,則此方法返回該接口及其所有超接口的public屬性。
    private和protected的屬性是不能得到。

    畢業(yè)設(shè)計(jì)的系統(tǒng)里面,我為了獲得VO中屬性的name和value,把原本的private改成了public,這樣做肯定是有隱患的。SpringSide里也有這個(gè)需求,但是他新包裝了一個(gè)方法,可以強(qiáng)行讀取或設(shè)置對象變量值,忽略private,protected修飾符的限制。為什么我開始就沒想到呢?  回復(fù)  更多評論
      


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲国产精品婷婷久久| 亚洲av无码专区在线播放 | 亚洲色自偷自拍另类小说| 国产尤物在线视精品在亚洲| 国产真人无遮挡作爱免费视频| 亚洲国产成人无码AV在线| 国产无遮挡色视频免费视频| 国产亚洲欧美日韩亚洲中文色| 成人永久免费高清| 美女被免费网站在线视频免费| 国产一区二区三区在线免费 | 久久亚洲AV午夜福利精品一区 | 黄色网址免费大全| 亚洲综合av一区二区三区| 日韩在线看片免费人成视频播放| 亚洲av无码av在线播放| 亚洲一区二区三区在线播放 | 免费h片在线观看网址最新| 亚洲人成7777| 免费大黄网站在线看| 一区二区三区在线免费| 久久青青草原亚洲av无码app| 中文字幕免费视频| 亚洲欧美第一成人网站7777| 夜色阁亚洲一区二区三区| 国产中文字幕在线免费观看| 久久亚洲精品国产精品| 日本免费一本天堂在线| 国产区在线免费观看| 亚洲国产精品综合久久久| 日本成人在线免费观看| 免费无码又爽又刺激网站| 国产日本亚洲一区二区三区 | 亚洲精品麻豆av| 50岁老女人的毛片免费观看| 国产精品亚洲一区二区无码| 亚洲伦理一区二区| 黄网址在线永久免费观看| 国产做国产爱免费视频| 亚洲欧美不卡高清在线| 亚洲AV无码国产丝袜在线观看|