給出一個抽象類,只有抽象方法抽象類,這將是這和接口之間的區別是什麼?只有抽象方法
我能看到的唯一的區別是涉及到使用多重繼承與接口的能力。
是否有在這種情況下,這將決定是否要做到這一點,或使用一個接口,而不是其他重要的區別是什麼?
給出一個抽象類,只有抽象方法抽象類,這將是這和接口之間的區別是什麼?只有抽象方法
我能看到的唯一的區別是涉及到使用多重繼承與接口的能力。
是否有在這種情況下,這將決定是否要做到這一點,或使用一個接口,而不是其他重要的區別是什麼?
另一方面,接口本身和實現接口的類之間的關係不一定強。例如,如果我們有一個名爲「House」的類,那個類也可以實現一個名爲「AirConditioning」的接口。讓空調不是衆議院的重要組成部分(儘管有些人可能認爲這一點),而且這種關係不如「TownHouse」班和「House」班之間的關係或者來自「House」類的「公寓」類。
由於聯排別墅是一種家的,這種關係是非常強的,而且會通過繼承而不是接口被更加適當定義。
因此,我們可以說,當有抽象類和類,會從中獲得之間有很強的關係的抽象類會更適合總結一下第一點。同樣,這是因爲抽象類與繼承密切相關,這意味着強烈的關係。但是,使用接口時,接口和實現接口的類之間不需要有強大的關係。
宣佈非公開方法爲抽象的能力...設置抽象類與其他家長派生並通過提供父母的方法給兒子的能力。要確定你的構造函數將獲得的能力和通過該力的派生類「知道」某些數據
*給定一個只有抽象方法的抽象類,這與接口之間會有什麼區別?*事實上,有這樣一個抽象類的糟糕設計:1)如果從另一個類繼承,那麼從這個抽象類沒有什麼用處,2)如果你確定了子類的構造函數,我會說它比接口相比更受限制,而不是一個好處; 3)自Java 8以來,你可以在接口中使用默認方法,您可以爲接口中的方法定義行爲。 –
我會稱之爲**糟糕的設計**。 –
Java 8或Java少於8? –
你可以有靜態方法 – shmosel