1.物件導向(oop)基本概念
物件導向程式設計 — object oriented programming 簡寫 oop
1.1 物件導向基本概念
我們之前學習的程式設計方式就是面向過程的
面相過程和面相物件,是兩種不同的程式設計方式
對比面向過程的特點,可以更好地了解什麼是物件導向
1.2 過程和函式(科普)
過程 是早期的乙個程式設計概念
過程 類似於函式,只能執行,但是沒有返回值
函式 不僅能執行,還可以返回結果
1.3 面相過程和面相物件 基本概念
1)面相過程 — 怎麼做?
a)把完成某乙個需求的所有步驟從頭到尾逐步實現
b)根據開發需求,將某些功能獨立的**封裝成乙個又乙個函式
c)最後完成的**,就是順序地呼叫不同的函式
特點:a)注重步驟與過程,不注重職責分工
b)如果需求複雜,**會變得很複雜
c)開發複雜專案,沒有固定的套路,開發難度很大!
2 )物件導向 — 誰來做?
相比較函式,物件導向是更大的封裝,根據職責在乙個物件中封裝多個方法
a)在完成某乙個需求前,首先確定職責 — 要做的事情(方法)
b)根據職責確定不同的物件,在物件內部封裝不同的方法(多個)
c)最後完成的**,就是順序地讓不同的物件呼叫不同的方法
特點:a)注重物件和職責,不同的物件承擔不同的職責
b)更加適合應對複雜的需求變化,是專門應對複雜專案開發,提供的固定套路
c)需要在面向過程基礎上,再學習一些物件導向的語法
1.4 類和物件
1.4.1 類和物件的概念
類和物件是物件導向程式設計的兩個核心概念
1)類類是對一群具有相同特徵或者行為的事物的乙個統稱,是抽象的,不能直接使用。
特徵被稱為屬性
行為被稱為方法
類就相當於製造飛機時的圖紙,是乙個模板,是負責建立物件的
2)物件
物件是由類建立出來的乙個具體存在,可以直接使用
由哪乙個類建立出來的物件,就擁有在哪乙個類中定義的:屬性和方法
物件就相當於用圖紙製造的飛機
在程式開發中,應該先有類,再有物件
1.4.2 類和物件的關係
類是模板,物件是根據類這個模板建立出來的,應該先有類,再有物件
類只有乙個,而物件可以有很多個,不同的物件之間屬性可能會各不相同
類中定義了什麼屬性和方法,物件中就有什麼屬性和方法,不可能多,也不可能少
1.4.3 類的設計
在使用面相物件開發前,應該首先分析需求,確定一下,程式中需要包含哪些類!
1)類的三要素
在程式開發中,要設計乙個類,通常需要滿足一下三個要素:
a)類名 這類事物的名字,滿足大駝峰命名法
b)屬性 這類事物具有什麼樣的特徵
c)方法 這類事物具有什麼樣的行為
2)類名要使用大駝峰命名法
capwords
a)每乙個單詞的首字母大寫
b)單詞與單詞之間沒有下劃線
3)類名的確定
名詞提煉法分析整個業務流程,出現的名詞,通常就是找到的類
練習 1
小明今年18 歲,身高 1.75,每天早上跑完步,會去吃東西
小美今年17 歲,身高 1.65,小美不跑步,小美喜歡吃東西
練習 2
乙隻黃顏色的狗狗叫大黃
看見生人汪汪叫
看見家人搖尾巴
物件導向基本概念(一)
物件導向基本概念 一 物件導向,oo object oriented 物件導向包含很多重要的概念 首先是物件本身,還包括 類,例項,繼承,封裝,多型,訊息隱藏和訊息傳遞。1 物件的定義 對問題域中某些事物的抽象,反映了系統保持資訊,並且與資訊互動,或者二者皆有的能力。這裡的重要概念是抽象,從實際事務...
python物件導向學習(一)基本概念
目錄2.類和物件的概念 3.類和物件的關係 4.類的設計 5.總結 物件導向程式設計 object oriented programming簡寫oop是物件導向程式設計語言中的乙個很重要的思想,python中的一切皆為物件,接下來過一下這些概念。1 面相過程 怎麼做?把完成某乙個需求的所有步驟從頭到...
物件導向 基本概念
物件 由其責任定義的,能夠自己負責自己,從而簡化了使用物件的控制程式的任務。將責任轉移到更區域性的層次。類 class 根據物件所具有的責任定義物件的型別。責任 行為或狀態,這些分別是由方法和或資料實現的。具體類 concrete cass 實現抽象類某一特定型別行為的類,具體類是乙個概念特定不變的...