面向对象思想学习
面向對象思想學習
面向對象主要包括七個關鍵詞
這七個關鍵詞為:數據、方法、對象、類、封裝、繼承、多態。
1、數據
根據百度百科得知,數據(data)是信息的表現形式和載體,是事實或觀察的結果,是對客觀事物的邏輯歸納,是用于表示客觀事物的未經加工的原始素材。
例如:學生的檔案信息,數字:0,1,2,3等,天氣預報上的氣溫溫度,諸如此類都可稱為數據。
而數據進行加工后,就形成了信息。在計算機中,數據是以二進制信息單元0,1進行表示。
2、方法
方法的基本解析是指為獲得某種東西或達到某種目的而采取的途徑,步驟和手段,而在軟件編程語言中,如果將函數定義為類的一部分或者將函數與某個對象綁定,那么該函數就稱之為方法。
方法簡單來說,就是你寫ACM題的時候自己寫的算法,就像為了減少程序運行時間,為了防止TLE,有時候需要自己寫一個快速冪函數,這就可以稱作方法,為了達成某種目的而去制作能達成這個目的的方式。
d=====( ̄▽ ̄*)b
3、對象
對象的基本解析是特定人或物,在計算機語言中表現為客觀世界中真實存在的人或者物體,在計算機中的邏輯映射。
對象可以理解為,在生活中,每個人都是一個對象,每件東西也都是一個對象,可以說萬物皆對象。在面向對象編程語言中,對象是系統中的基本運行實體,是代碼和數據的集合。
4、類
類簡單來說就是分類。在面向對象中,類是實現信息封裝的基礎,類是一種引用數據類型,也稱類類型。每個類包含數據說明和一組操作數據的方法,而上面說的對象則是類的一種實例。
舉個例子,人類就是一個基本的類類型,而每個人則是這個類類型的實例,也就是對象,人類這個類包含有姓名、性別、年齡等等這些數據說明,同時也有走路、吃飯、工作這些傳遞能量信息的方法。
5、封裝
封裝是對某一類事物進行抽象描述。封裝是個動詞,通過將姓名、性別、年齡等這些屬性抽象到人類這個類類型的過程就叫封裝。當我們一說到人類,就能聯想到這個人叫什么名字、是男是女、多大年紀等等。同時封裝也能隱藏人身上的一些特殊屬性,比如:這個人身上有多少錢,這是我們不可得知的。
6、繼承
繼承就是子類繼承父類的特征行為,使得子類對象(實例)具有父類的屬性和方法,或子類從父類繼承方法,使得子類具有父類相同的行為。同時,子類不僅可以繼承父類全部的功能,還可以創建增加新數據、新功能。
注意:子類繼承父類的功能時,不能選擇性的繼承父類的部分功能,繼承是類與類之間的關系,不是對象與對象之間的關系。
例如:你自己,繼承了你父親的姓名,性別,年齡等這些屬性,但是你在繼承這些屬性的同時增加了你會寫代碼的這么一個方法,而這個寫代碼的方法是你自己獨有的,你的父親并不具備這個寫代碼的這個功能。這就是繼承。
7、多態
講多態前,需要知道接口這一知識點。
接口,是一種特殊的類,在這個類中指定必須做什么,但不用規定它如何去做,而多態就是以多種方式告訴這個接口類該如何去做。
例如:定義一個接口類,這個類中只有一個吃飯的方法,所以我們可以知道這個類中必須要做吃飯這件事,但是吃什么,怎么吃,在哪里吃?這里就可以通過多態來實現了,我們可以再定義兩個類去實現這個接口,一個類告訴它我要去中餐廳用筷子吃魚,另一個類告訴它我要去西餐廳用刀叉吃牛排
簡而言之,多態就是自定義多個方法使接口類實現一件事情的達成。φ(* ̄0 ̄)
總結
面向對象其實就是環繞類進行拓展,將數據、方法封裝進類中,而類又可以創建對象。多態則可以使類增加多種不同的方法,而繼承可以使類在原有基礎上進行擴展,使類擁有更多的屬性、方法。ε=ε=ε=(~ ̄▽ ̄) ~
總結
- 上一篇: 机器学习笔记十九:正则化思想
- 下一篇: Invalid bound statem