Re: [問題] 請問interface到底是做什麼用的?

看板java作者 (godfat 真常)時間19年前 (2006/04/14 11:48), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串12/33 (看更多)
※ 引述《kazenol (隨便啦)》之銘言: : 嗯...這邊我的問題是,物件的compareTo方法,可不可以直接定義在物件的class裡? 可以,但是你有仔細看我說什麼嗎? 每個物件的比較方法會一樣嗎?不會嘛 : 因為物件去繼承介面,也是要在自己裡面去定義方法,那為什麼不自己來呢? 你是不是搞錯什麼東西了?本來就是這樣啊 @_@ 既然要自己去定義,自然是要自己來了… 我們不會說「繼承介面」,而是「實作介面」 因為繼承類別和實作介面其實是兩回事 : 從多重繼承的字面來看,應該是會使用到父母類別的方法或變數,可是介面裡寫的 : 東西,除了跟父母類別的方法同名以外,我不知道繼承介面可以得到父母類別的什麼 : 東西?而且其他不是父母類別的類別,萬一有了同樣名稱的方法,那不就變成同時也 : 去繼承這個第三者了? no no... 我覺得你好像有很大的誤解…似乎有搞錯繼承的定義… 這樣的話談這些設計就沒有意義囉,因為只會誤解… 首先,你的最後一句話絕對是錯的 同樣的名稱跟實作介面沒有關係 class A{ public void test(){} } class B{ public void test(){} } A 和 B 沒有任何關係 Java 裡談到的 interface... 是窄化的介面 @@ 不要被名詞混淆了 : 其他幾位大大的寫法,我能理解其中的:先定義一個規範,其他要繼承這個類別的 : 就要去把規範的內容寫出來。就好像是體委會丟一個建立二軍的公文要求中職六隊 : 去建立二軍,但是體委會什麼目標、進程都沒有,要六隊自己提出建立二軍的規劃表 : 然後上繳體委會,所以六隊提出的內容也會不一樣,但是基本上都有依照體委會"建立 : 二軍"的目標去做。 你這個說法比較像是實作介面 : 可是不見得每個二軍規劃表都有像la new一樣有"球員專用餐廳"啊,如果要使用 : 二軍.餐廳()這個func,不就會卡住?如果中職六隊不去繼承體委會這個介面,他們也 : 可以不用理會建立二軍這個規範。那是什麼原因這些class必須去繼承這個介面呢? 看不太懂 @_@ 我覺得你可能要再多看一下書,並練習一下 然後那個 design pattern 離你還太遠,不用去想那個 XD 再看那個只會更混亂而已 -- By Gamers, For Gamers - from the past Interplay -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.135.210.113
文章代碼(AID): #14FnkWQl (java)
討論串 (同標題文章)
文章代碼(AID): #14FnkWQl (java)