Python學習筆記之OOP

類的定義

定義一個類如下例:

class PythonStudent():
	name = "ice"
	age = 20
	cource = "Python"
	def printName(self):
		print(self.name)
		return None
	def printAge(self):
		print(self.age)
		return None
stu = PythonStudent()
stu.name = "sword"
stu.printName()
stu.printAge()

以上的self表示,將實例自己作爲函數的第一個參數。

方法訪問實例的屬性時,如果實例的屬性沒有賦值,則找到類的屬性對應的值。

訪問類的屬性

在類裏面,如果類的方法需要強制訪問類的屬性,使用class名訪問類屬性,或者用__class__訪問類的屬性。

如下例

class PythonStudent():
	cource = "Python"
	def printCource():
		print(PythonStudent.cource)	
		print(__class__.cource)
		return None
PythonStudent.printCource()	

構造函數

構造函數的寫法固定:def __init__(self),構造函數的self參數最好都要有。

繼承

子類可以使用父類的內容或者行爲。所有類都必須有一個父類,如果沒有,則默認爲是object的子類。在Python中,一個類可以有多個父類。構造函數默認繼承。

issubclass檢測是否是子類,用來檢測兩個類的父子關係。

python中,一個類可以有多個父類。在多繼承的情況下,多繼承屬性和方法的搜索是按繼承順序來搜索的。這種搜索方法叫“廣度優先搜索”。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章