用Java繼承來解決反射難以獲取到的實例的思想

遇到的問題:在zk的頁面上想獲取到自動生成的bandbox的實例,如Bandbox ban=(Bandbox)this.getFellowIfAny("id"),目的是拿到它的值,但直接getValue拿到的是表面Text的值,而實例的Class名是存在數據庫中的(自定義的一個Bandbox的繼承類),用Instanceof 判斷不了實例的類。

解決方法,讓所有自定義的bandbox繼承一個公用的BaseBandbox,在BaseBandbox中放兩個成員,一個是Object(放model類)一個是value(model中需要用到的值),這樣在自定義的時候把每個bandbox的項相應的這兩個內容放進去,最後在ZK頁面上獲取值的時候使用BaseBandbox xx=(BaseBandbox)this.getFellowIfAny("id"),這樣就能獲取到實際的值而不是表面顯示的text

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章