close

這三個封裝、繼承、多型 學過物件導向大概都會知道,近日在應徵工作,

只要是Java、C++...等相關工作都會問"你對物件導向熟嗎。",

我都說:還可以,

但事後想想應該直接講物件導向三大特性 封裝、繼承、多型,

但有面試官會要你說明這三個東西到底是什麼,

那是在我人生第二次線上面試所被問到的問題,

反正我是傻住了,因為我都是實作比較有經驗,

面試官:物件導向是什麼?

我說:就好像遙控器,可以控制很多物件...,

講了很多語無倫次的話,

面試官:物件導向三大特性封裝、繼承、多型可以講一下是什麼?

我說:封裝.... (內心OS:阿不是set、get、private這要怎麼講),(´゚д゚`)

我說:繼承....(內心OS:阿不是我可以用別人的東西), (´;ω;`)

我說:多型...(內心OS:interface), இдஇ

好吧一問三不知,直接被我拉拉拉的過去了,

最後當然是很尷尬的結束了,過程不到10分鐘,

太丟臉了,沒關係人都有第二次,多幾次就會熟了,

經過那麼慘痛的經歷,當然是要補起來,

拿書來看這三個東西到底要怎麼講,

當然實際在用就那樣,但是很難用口語方式表達,

最後當然是用"舉例"的方式,一來好記不會忘,

二來大多數人大多都可以聽懂,真的好處多多。


封裝:
    1.隱藏不想讓人隨意竄改的屬性。
    2.簡單化(提供對外function)。
    
例:

就好像封裝廠製作IC,有一個步驟叫"封裝IC",

不用了解裡面的構造只要知道pin腳有何功能就好。
    
    


繼承:
    1.節省時間
    2.方便
    
例:

就好像車商一次出了三款不同型號的車,

不可能這三款所有東西都是獨立打造,

一定會有相似之處,而那個相似之處就是繼承,

可能座椅跟上台車一樣,引擎都是同一顆等,使用上一定會比較省時、省錢。
        
        


多形:
    1.相同屬性、function但不同物件會有不一樣的結果
    2.方便管理
    
例:

就好像人類(大人、小孩、老人...)是一個物件,

這一個物件有一個function是看電影,但每一個人的興趣、喜好不同,

有人喜歡看 愛情片、動作片、恐怖片...等,同樣都為"人",

選擇也會有所不同,也可以說把一個物件簡單化,不要分太細,集中管理。

 


不得不說有些舉例真的很讚,

一看就懂,大家在複習時可以自己"舉例",

 

洗澡時,物件導向有哪三大特性,

我:封裝、繼承、多型 封裝就好像.....。

 

上床睡覺時,物件導向有哪三大特性,

我:封裝、繼承、多型 封裝就好像.....。

 

之後就會越來越熟。ヽ(●´∀`●)ノ

 

 

arrow
arrow
    創作者介紹
    創作者 讀書小天地 的頭像
    讀書小天地

    書籍分享天地

    讀書小天地 發表在 痞客邦 留言(0) 人氣()