java 板


LINE

: 推 henry4343:應該是你講的這樣 我想做的是讓class繼承某個class 05/21 09:39 : → henry4343:然後class又可以擁有各自的物件讓我使用 05/21 09:41 : → henry4343:如果直接把每個class都宣告成物件就解決了 但這樣很麻煩 05/21 09:44 : → henry4343:所以才宣告父類別,然後在我要的地方建成我要的class 05/21 09:46 說實在的,我實在搞不懂你要的到底是什麼? 你這兩篇打了一堆字,不知道是我最近 PHP 寫多了還是怎麼的 (PHP:棍... 干我屁事) 我完全無法理會你的中文 像「把每個 class 都宣告成物件」這句話就很詭異 你這段推文用了許多次「物件」這個詞 那到底是「class 的 instance」的 object? 還是你在指所有 class 的老祖宗 java.lang.Object? (這不是撒尿牛丸,你不能把所有東西都混在一起用同一個名詞去講) 你可不可以提供一個比較劇本的劇本(什麼鬼?) 至少把你的各個 class 取個名字什麼的 為了又避免說我在酸人,然後今天終於睡得比較飽了 我再來示範一次怎麼問問題 //// 隔山打牛,模擬原 po 問題開始 //// 我有幾個 class,假設叫 ChildA, ChildB, ChildC 希望它們共同繼承 Parent 這個 class 然後 ChildA, ChildB, ChildC 各自可以有自己獨特的 attribute/field 但是宣告的時候還是用 Parent 來宣告,這樣使用起來才方便 也就是說 Parent a = new ChildA(); Parent b = new ChildB(); Parent c = new ChildC(); System.out.println(a.attr.getClass()); System.out.println(b.attr.getClass()); System.out.println(c.attr.getClass()); 三個印出來的 class name 要(可以)不一樣 //////// 我先把醜話說在前面 無論我這段隔山打牛多麼曲解你的意思,你都不能說我猜錯了 因為你一開始就沒有辦法寫的讓人家懂 就好像你對別人說「我愛著你」,等到對方回答「那在一起吧」 才跟人家說「我的意思是『我礙著你』,你誤會我了」 如果你住在米花市的話,你大概馬上就會變成被害者了 好,如果問題是這樣的話 那麼第一個問題就是,為了確保 ChildA 等等 一定有 attr 這個 attribute/field 所以改成一定得透過 getter 來取得 System.out.println(a.getAttr().getClass()); 其實到這邊,就已經算解決你的問題了 因為 Parent(假設是 abstract class,interface 也差不多) abstract class Parent { abstract Object getAttr(); } 這樣就可以強制 ChildA 等等一定要 implement 這個 method 至於 ChildA 們怎麼搞 getAttr() 就看個人高興 當然,你要更硬派(?)一點,也可以這樣, 不過 abstract class 限定就是了 而且萬一不知道 getAttr() 要幹麼的人會寫錯 abstract class Parent { public Object attr; Parent() { genAttr(); } abstract void getAttr(); } 至於 ChildA、ChildB、ChildC 的 attr 又希望在同一個家族裡頭 那就是另外一個故事了 ======= 好吧,我承認我是來混文章數的 -- 錢鍾書: 說出來的話 http://www.psmonkey.org 比不上不說出來的話 Java 版 cookcomic 版 只影射著說不出來的話 and more...... --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.25.0.70
1F:→ eieio:還米花市咧,害我差點把一口水全噴電腦上了 05/21 13:56
2F:推 cuteclare:真相只有一個~就是pH 質 < 7~ 05/21 15:50







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:WOW站內搜尋

TOP