**物件導向
引例:製作乙個蟹黃堡
面向過程:放乙個麵餅–>放一片生菜–>放一片牛肉–>放一片芝士–>放乙個麵餅
物件導向:海綿寶寶.做蟹黃堡();
引例:把大象放進冰箱裡:
面向過程:開啟冰箱門–>把大象放進去–>關閉冰箱門
物件導向:人.開門();
人.放入大象();
人.關門();
三大特徵:封裝、繼承、多型
封裝
封裝,就是把客觀事物封裝成抽象的類,並且類可以把自己的資料和方法只讓可信的類或者物件操作,對不可信的進行資訊隱藏。
舉例:有太多太多的人要吃蟹黃堡了,海綿寶寶忙不過來了,叫上了派大星幫忙。但是蟹老闆不願意告訴派大星蟹黃堡秘方。所以把蟹黃堡的秘方鎖在了櫃子裡,只告訴派大星各種材料按什麼順序放置,便可製作乙個蟹黃堡就可以了。
繼承
繼承,指可以讓某個型別的物件獲得另乙個型別的物件的屬性的方法。
舉例:客人的需求越來越多,不止想吃蟹黃堡,還想要巨無霸蟹黃堡。此時,我們只需要在原來的蟹黃堡上加入兩塊肉餅即可。他具有蟹黃堡的屬性,同時又具有自己特有的屬性。
多型
多型,是指乙個類例項的相同方法在不同情形有不同表現形式。多型機制使具有不同內部結構的物件可以共享相同的外部介面。
舉例:有一位顧客點了乙個漢堡,只有當顧客選好漢堡種類,並且由章魚哥傳達給海綿寶寶的時,才能確定他具體的種類(蟹黃堡?巨無霸蟹黃堡?等等)
比如客人點的是蟹黃堡,
此時,(繼承)海綿寶寶便會製作蟹黃堡。蟹黃堡,繼承了漢堡的特點。
(重寫)同時又重寫了裡面的一些漢堡的製作方法。(比如漢堡的製作方法就沒有放一片芝士這個步驟,但是蟹黃堡需要)
(向上轉型)當海綿寶寶使用 漢堡.製作();這個方法時,在製作時就會加上芝士。(也就是運用的蟹黃堡的製作方法)
理解物件導向
三個基本特徵 封裝,繼承,多型 封裝 將物件的實現細節隱藏起來,然後通過一些公用方法來暴露該物件的功能 使用訪問控制符 private default protected public private 當前類訪問許可權 default 包訪問許可權 protected 包 子類 public 公共訪...
理解物件導向
要理解物件導向。則要知道類和物件的關係。類是具備某些共同特徵的實體的集合 把資料和對資料的操作方法放到一起,相互依存的集合就叫做物件。物件的抽象是類,類的具體化就是物件,也可以說類的例項是物件。比如在現實世界中,人類就是乙個類,具體到實體的某乙個人,這個人就是人類這個類中具體化的乙個物件。而這個人的...
物件導向理解
物件導向的概念 理解物件導向首先要理解類的概念,通過類可以建立多個具有相同屬性和方法的物件。但在ecmascript當中並沒有類的概念,因此它的物件也與給予類的語言中的物件有所不同。物件理解 1.建立自定義物件 就是建立乙個object的實力,然後再為它新增屬性和方法,如下所示。var person...