子類和父類主要描述的是類之間的繼承關係,即所屬關係。繼承 的類可在被繼承的類的基礎上新增格外的引數和行為,新類稱為子類,擴充套件類;被繼承的類稱為基類、父類或者超類。
使用方法:
##基本格式
class father(object): ##父類
def __init__(self,name,age):
self.name = name
self.age = age
def eat(self):
print('%s is eating...' %self.name)
class son(father): ##子類
def eat(self):
print('%s daoli eating...' %self.name)
father = father('laolaoli',65) ##申明初始變數
son = son('laoli',40)
son.run() ##呼叫
當子類和父類中有相同的方法時,會預設呼叫子類中的方法(對子類的物件),若要呼叫父類,可採取如下方法:
##呼叫父類中的方法
......
class son(father):
def eat(self):
# super(son,self).eat() ##呼叫父類
# father.eat(self) ##呼叫父類
print('%s daoli eating...' %self.name)
......
上述是兩種方法,任選其一即可。
在操作類的時候,會出現同乙個類被多個類所呼叫,或者被遞迴的呼叫。當讀取的時候就有兩個規則,我們將其稱為新式類和經典類。新式類是以廣度優先為方式進行呼叫的,經典類是以深度優先的方式進行呼叫。
對呼叫方法可以進行如下**測試:
class d(object):
def test(self):
print('test in d...')
class c(d):
def test(self):
print('test in c...')
class b(d):
def test(self):
print('test in b...')
class a(b,c):
def test(self):
print('test in a...')
a = a()
a.test()
在上述程式中我們可以進行逐一除錯,檢視呼叫方式。值得注意的是object就是用來表示父類的呼叫方式。在python2中預設是經典類的呼叫(若想使用新式類呼叫,可在父類中新增關鍵字object),在python3中則預設是新式類呼叫。
有時為了對程式進行檢測,我們常採用類內部的變數對其進行檢測,基本定義方式為『--』+名稱:
##宣告
class student(object):
def __init__(self,name,age):
self.name = name ##外部名稱
self.__age = age ##內部名稱
def __get_info(self):
doing...
一般情況下,內部變數和內部方式均不可被外部所使用,除非使用特定方式。
##使用內部變數
student1._student__get_info()
##student1 對像名稱
##student 類名稱
##__get_info 類內的內部變數
當不同的類在定義時,不同類下的名稱為同一名稱,在定義物件使用時,仍然可以使用,這就為子類和父類的定義,打下了基礎。
class student():
def name(self):
doing...
class chinese():
def name(self):
doing...
class math():
def name(self):
doing...
student1 = student()
student2 = chinese()
student3 = math()
student1.name()
student2.name()
student3.name()
上述示例中,3個物件呼叫不同的使用者,使用者所執行的行為是不同的。
python類之間關係 python 類之間的關係
類與類之間的關係 1.依賴關係 class plant def init self,zhonglei,xue,gongjili self.zhonglei zhonglei self.xue xue self.gongjili gongjili def da self,js print 植物打殭屍 ...
Python中類 例項 方法之間的關係
本文參考python核心程式設計類的強大與否取決於它的功能,我們改進類的方法之一就是給類新增功能。類的功能有乙個更為通俗的名字就是方法,在python中,方法定義在類的定義中,但是只能被例項所呼叫,呼叫乙個方法的最終途徑必須是這樣的 1 定義類和類中的方法 2 建立乙個例項或者說將類例項化 3 最後...
python中類與物件之間的關係詳解
在搜尋平台上關於類以及物件都已經被霸屏了,主要的問題無非就是兩個,乙個是理解二者,另乙個就是理解二者之間的使用關係,對於小編來說,兩者統一跟大家講清,相信也很難程式設計客棧被大家消化,這不,給大家想出來比較好理解的方式,用最簡單的話,快速交大家上手,可別不信,簡單易懂內容如www.cppcns.co...