封裝繼承多態(tài)面試 封裝繼承多態(tài)到底講的是什么?
封裝繼承多態(tài)到底講的是什么?首先,我想說的是,封裝、繼承和多態(tài)性并不是針對C語言提出的。它們是在面向?qū)ο笏枷胂庐a(chǎn)生的一個概念。因此,如果你想理解封裝、繼承和多態(tài)性,你必須首先理解面向?qū)ο蟮母拍?。封裝:
封裝繼承多態(tài)到底講的是什么?
首先,我想說的是,封裝、繼承和多態(tài)性并不是針對C語言提出的。它們是在面向?qū)ο笏枷胂庐a(chǎn)生的一個概念。因此,如果你想理解封裝、繼承和多態(tài)性,你必須首先理解面向?qū)ο蟮母拍?。封裝:當我們談論面向?qū)ο髸r,對象是如何產(chǎn)生的?它是通過我們的人工封裝。封裝是將一些特性或函數(shù)組合成一個抽象對象。以計算機為例:它的特點是有顯示屏、主機、鼠標、鍵盤等。功能包括計算等。當我們把這些特性和功能組合成抽象的術語“計算機”時,“計算機”就具有這些特性和功能。但這臺“電腦”不是實物。它代表了所有被稱為“計算機”的真實物體的名稱。在C#中,我們稱封裝的抽象名詞類為類,因此我們稱“computer”為類,而物理計算機為此類的對象(或?qū)嵗?。繼承性和多態(tài)性是類的特征。繼承:這個詞可以用正常的意義來解釋。例如,你繼承了你父親的優(yōu)點。在c#中,類也可以被繼承(單繼承)。例如,我們有“計算機”一類?,F(xiàn)在我們定義了另一個類“聯(lián)想電腦”。我們想重新定義計算機的特性和功能嗎?是的,它可以,但一方面,代碼有點重復,另一方面,它不方便管理和解釋聯(lián)想電腦的特點。因此,我們可以讓聯(lián)想電腦從“電腦”這一類繼承下來。我們稱“聯(lián)想電腦”為“電腦”的子類或派生類,“電腦”稱為父類或基類。這樣,只要“電腦”有東西,“聯(lián)想電腦”就有了,但“聯(lián)想電腦”也可以進化(添加)出自己獨特的東西。因此,父類(基類)是子類(派生類)的子集。