繼承是一種行為,說明子類擁有父類的方法,並且可以覆蓋父類的同名同引數方法。
而介面是一種操作定義,它定義實現它的類所必須要有的方法。
有了介面之後,設計程式時,才能夠面向介面程式設計,使得程式適應性大幅度提高。做個比方,你知道開會,一定是先致幕詞,然後討論,然後結束總結。每個會議都有這三個步驟,但是你不知道每乙個步驟裡都具體要實現什麼。此時我們要針對這個會議開發乙個適應性很強的程式。最簡單就是面向介面程式設計。
我們在主程式中,用介面型別的引用來指向傳入的會議物件。任何實現了會議介面3個方法的物件,都可以被你呼叫。你不需要它具體怎麼實現的,或者它的物件具體是哪個位址,只需要物件必須實現了會議介面這三個方法,而你的程式只是順序呼叫介面引用指標下的三個方法,就完成了程式。至於傳入什麼樣的會議物件,就放到了程式的外圍,符合標準的。傳入就可以處理。程式不僅靈活,而且就在此刻具備了物件導向的多型特徵。對於你的主程式而言,它只有到執行的那一刻,才能知道自己呼叫的是哪個物件。
而繼承是為了解決另外的問題。比如已經有乙個會議程式了,我們要相容它,然後還增加我們的自己的介面實現或者功能。這時我們就使用繼承,將已有程式的類繼承,然後該覆蓋的方法覆蓋,並且實現我們需要的介面。然後將子類傳入都新寫的主類中,依舊遵從面向介面的程式設計去開發。就這麼簡單。
類和物件 關於繼承 關於介面
一 類和物件 物件將資料和操作打包在一起,類描述一切 用構造器建立物件 類和類之間的關係 關聯 組合,聚集 泛化二 關於繼承 祖先類object 方法重寫 tostring方法 equals方法 is a 是乙個 繼承關係 has a 有乙個 組合關係 三 關於介面 定義了一組功能 comparab...
關於繼承和介面的區別
當使用繼承的時候,主要是為了不必重新開發,並且在不必了解實現細節的情況下擁有了父類我所需要的特徵。但是很多時候,乙個子類並不需要父類的所有特徵,它可能只是需要其中的某些特徵,但是由於通過繼承,父類所有的特徵都有了,需要的和不需要的特徵同時具備了。而那些子類實際上不需要用到的,有時候甚至是極力避免使用...
繼承和介面
繼承和介面 一 抽象類 抽象類和介面的關係非常緊密,都必須有要實現的成員。它們最大的區別是由抽象類可以派生出一些成員的實現,但介面卻不包含任何成員的實現。當派生出的事物都屬於同乙個種類時,此時可用抽象類 當派生出的事物的功能要求完全不同的類物件時,就要用介面實現。抽象類要求至少有乙個抽象成員,抽象成...