要知道什么是面向對象,你首先要有個對象吧,所以······沒有對象的可以回家洗洗睡了·
好吧,前面是開玩笑,要說明什么是面向對象,我們還是先
例子:
小呆:“小傻,你今天早餐吃的什么?”
小傻:“吃的東西可多啦,有兩片面包,一塊雞肉餅,幾片菜葉子,一點沙拉醬,另外還喝了一杯可樂,一袋油炸土豆條”
小呆:“小傻,你四不四灑啊!你直接說你吃的雞肉堡套餐不行么 - -”
小傻:“呃,好吧,我吃的這個雞肉漢堡套餐”
OK,從上面的例子可以了解到什么是面向對象了吧,初學者可以這樣理解:把很多單獨的數據和方法封裝在一起,就變成了一個對象。
后面我們會講解面向對象的一些概念:類、對象、屬性、方法、封裝、繼承、多態,通過這些概念再來理解什么是面向對象。
那么,上面這個例子中出現了幾個對象呢?
第一個:雞肉漢堡套餐:包含的屬性有雞肉漢堡,薯條,可樂
第二個:雞肉漢堡:包含的屬性有面包,雞肉餅,生菜,海拉醬
第三個:一袋薯條:包含的屬性有很多根薯條,一個包裝袋
第四個:一杯可樂:一個杯子,一些冰塊,可樂
第五個:......
是不是發現,這樣分析下去可以無窮無盡???哈哈,那就對了,這就是面向對象編程分析。
當然實際開發中我們不會這樣不斷分解下去,沒必要把一個對象最終分解成原子。
一般我們會根據功能來分析具體有哪些對象,如果有一些對象具有相同的屬性和方法,我們會把它們歸於一類。具體如何分析就是我們接下來的內容了。
基本概念介紹
一、類:
類就是對一組具有相同屬性和方法的對象的一個抽象,簡單說就是一個概念,比如“女神”就是一個類
女神
二、對象:
對象就是類的一個實例,簡單說就是一個真實存在的實物,是一個具體的東西了,比如有些看官的女神就很具體了
林姐姐 蒼井姐姐
賈大姐
三、屬性:
屬性就是對象的特征,是名詞,比如上面的女神都有身高、體重、姓名、年齡和三圍等·
林姐姐:173cm,54kg,林志玲,43和保密。
蒼井姐姐:155cm,45kg,蒼井空,34和保密。
賈大姐:166cm,保密 ,賈 玲,35和保密。
四、方法:
方法就是對象的行為,是動詞或動名詞
林姐姐有游泳、跑步和拍廣告等方法。
蒼姐姐有拍寫真、拍電影等方法。
賈大姐有演小品、唱歌等方法。
五、封裝:
封裝就很好理解了,都有收發過包裹吧,這就是一種封裝
封裝最大的好處就是隱藏細節,只預留使用者關注的功能API就OK了。
比如空調,從使用者的角度,我們只關心以下功能的使用:開、關、制熱、制冷、調溫度等。具體這些功能如何實現的,對應的電子電路圖是什么樣的,使用了什么樣的電路板等,我們完全不關心也不用關心。
六、繼承:
繼承應該也好理解吧,就是龍生龍,鳳生鳳,老鼠的兒子會打洞,如果出現下面這情況,就要問問隔壁老王了。
七、多態:
面向對象中的多態是指不同的對象對相同的指令有不同的執行效果。比如你讓不同的葫蘆娃執行“放大招()”這個方法,對應的效果就不一樣。
今天就先介紹一下基本概念吧,下次我們再來看這些概念對應的Java語法。