Re: [問題] class變數存取問題

看板java作者 (遙遠的旅人)時間19年前 (2006/03/15 22:41), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串16/17 (看更多)
※ 引述《PsMonkey (痞子軍團團長)》之銘言: : 請注意一下,Comparator 沒有要 "給誰用" : 他只是提供一個方便抽換的方法 : TreeSet 也好,Arrays.sort 也好 : 不提供 Comparator 可不可以? 當然可以... : 運作起來依然正常... : 只要裡頭的物件都有 implement Comparable 就好 : 沒有也沒關係,大不了丟出 ClassCastException : (就算你給他 Comparator,一樣還是可能出現 ClassCastException 阿) 我說一下我的幹過的事情好了。 Comparator可以做出怎樣的好事來呢? ...簡單的虛擬碼: int compare(Object o1, Object o2) { class1 = o1.getClass(); class2 = o2.getClass(); //Reflection operation... int o1MethodWeight = this.matchMethodsWeight(class1,"set*:string,int"); int o2MethodWeight = this.matchMethodsWeight(class2,"set*:string,int"); if(o1MethodWeight>o2MethodWeight)reutrn 1; if(o1MethodWeight==o2MethodWeight)reutrn 0; if(o1MethodWeight<o2MethodWeight)reutrn -1; } 所以,我是需要自己實做一個container並且對內部的DynamicProxyObject 作Pooling,同時我需要一個物件資源耗費可能性的指標,以方便排序後其 他部分有比較好的輪詢策略。 但問題來了,我不想作一堆的helper Object去持有ProxyObject,然後在內 部計算這樣很浪費資源。同時我也希望put進去的Proxy可以快樂的自己對號 入座。 可是,Dynamic Proxy Object是byteCode程式碼產生器產生出來Load到 ClassLoader裡頭的,它implement的interface是Deployment Discripter定 義的,我只能執行期去偵測它,而不能預先知道。 於是我想出這種辦法,這個方法是假設: 擁有符合給定pattern方法越多的,資源耗費越大。 PS:上面的例子是方便說明,實際傳入的pattern是個其他物件。 : 這句話又是什麼意思 T__T : : 沒實做不知道 XD : [舉手] 不同型之間為什麼要讓他們比較? ==.== : 如果你要討論可不可行... 那... 一定可行的 : 你的 toString() 硬幹法就是經典 : 問題是... 為什麼要這麼作? T___T 這世上需要幹蠢事的人很多... 我算是一個。 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.85.116.116

03/16 00:29, , 1F
這篇 m 了也不知道該往哪裡丟 .... XD
03/16 00:29, 1F
文章代碼(AID): #1462UEl7 (java)
討論串 (同標題文章)
文章代碼(AID): #1462UEl7 (java)