面向物件程式設計基礎
阿新 • • 發佈:2018-11-09
面向物件程式設計
面向物件程式設計:Object Oriented Programming,簡稱OOP,是一種程式設計方法。
面向物件面向過程區別
完成自我介紹功能,面向過程完成功能 stu_a = { "name":"A" "age":18, "hometown":"東北" } stu_b = { "name":"B" "age":19, "hometown":"山東" } stu_c = { "name":"C" "age":20, "hometown":"河北" } def stu_info(stu): # 自我介紹 for key,value in stu.items(): print("key=%s,value=%d"%(key,value)) stu_info(stu_a) stu_info(stu_b) stu_info(stu_c) 接下來我們用面向物件的思想來完成功能 stu_a = Student(個人資訊) stu_b = Student(個人資訊) stu_c = Student(個人資訊) stu_a.info() stu_b.info() stu_c.info()
面向過程:根據業務邏輯從上到下寫程式碼
面向物件:講資料與函式繫結到一起,進行封裝。減少重複程式碼的重寫過程
面向物件和麵向過程都是解決問題的一種思路而已。
概念及術語
類(Class): 用來描述具有相同屬性和方法的物件的集合。它定義了該集合中每個物件所共有的屬性和方法。其中的物件被稱作類的例項。
例項:也稱物件。通過類定義的初始化方法,賦予具體的值,成為一個"有血有肉的實體"。
例項化:建立類的例項的過程或操作。
例項變數:定義在例項中的變數,只作用於當前例項。
類變數:類變數是所有例項公有的變數。類變數定義在類中,但在方法體之外。
資料成員:類變數、例項變數、方法、類方法、靜態方法和屬性等的統稱。
方法:類中定義的函式。
靜態方法:不需要例項化就可以由類執行的方法
類方法:類方法是將類本身作為物件進行操作的方法。
方法重寫:如果從父類繼承的方法不能滿足子類的需求,可以對父類的方法進行改寫,這個過程也稱override。
封裝:將內部實現包裹起來,對外透明,提供api介面進行呼叫的機制
繼承:即一個派生類(derived class)繼承父類(base class)的變數和方法。
多型:根據物件型別的不同以不同的方式進行處理。