1.飛機會飛,鳥會飛,他們都繼承了同乙個介面「飛」;但是f22屬於飛機抽象類,鴿子屬於鳥抽象類。
2. 就像鐵門木門都是門(抽象類),你想要個門我給不了(不能例項化),但我可以給你個具體的鐵門或木門(多型);而且只能是門,你不能說它是窗(單繼承);乙個門可以有鎖(介面)也可以有門鈴(多實現)。 門(抽象類)定義了你是什麼,介面(鎖)規定了你能做什麼(乙個介面最好只能做一件事,你不能要求鎖也能發出聲音吧(介面汙染))。
1. 如果預計要建立元件的多個版本,則建立抽象類。抽象類提供簡單的方法來控制項版本;
2.如果建立的功能將在大範圍的全異物件間使用,則使用介面。如果要設計小而簡練的功能塊,則使用介面;
3.如果要設計大的功能單元,則使用抽象類。如果要在元件的所有實現間提供通用的已實現功能,則使用抽象類;
4.抽象類主要用於關係密切的物件;而介面適合為不相關的類提供通用功能。
總結----
抽象類:你是什麼
介面:你能做什麼
簡述抽象類和介面 抽象類區別的區別
用abstract修飾的類叫抽象類 1 抽象類不能有物件,抽象類不能例項化,不能new 2 abstract修飾的方法為抽象方法,這種方法不能有方法體 什麼內容都沒有 3 抽象類不能有物件,不能new物件 4 有抽象方法的一定是抽象類,抽象類中不一定有抽象方法 5 抽象型別中的抽象方法必須在子類中被...
介面與抽象類區別
介面是公開的,裡面不能有私有的方法或變數,是用於讓別人使用的,而抽象類是可以有私有方法或私有變數的,另外,實現介面的一定要實現介面裡定義的所有方法,而實現抽象類可以有選擇地重寫需要用到的方法,一般的應用裡,最頂級的是介面,然後是抽象類實現介面,最後才到具體類實現。還有,介面可以實現多重繼承,而乙個類...
介面與抽象類區別
1 從形態上 抽象類可以給出一些成員的實現,介面卻不包含成員的實現。抽象類的抽象成員可被子類部分實現,介面的成員需要實現類完全實現,乙個類只能繼承乙個抽象類,但可實現多個介面 2 類是對物件的抽象,抽象類是對類的抽象,介面是對行為的抽象。也就是說介面是對類的區域性 行為 進行的抽象,而抽象類是對整體...