繼承與派生, 繼承的應用

2022-09-17 07:51:09 字數 2018 閱讀 7806

一,什麼是繼承?

繼承是一種新建類的方式,新建的類稱為子類,被繼承的類稱為父類。

繼承的特性是:子類會遺傳父類的屬性。

強調:繼承是類與類之間的關係

二,為什麼用繼承?

繼承的好處就是可以減少**的冗餘

3、如何用繼承

在python中支援乙個類同時繼承多個父類

在python3中

如果乙個類沒有繼承任何類,那預設繼承object類

在python2中:

如果乙個類沒有繼承任何類,不會繼承object類

新式類但凡繼承了object的類以及該類的子類,都是新式類

經典類沒有繼承object的類以及該類的子類,都是經典類

在python3中都是新式類,只有在python2中才區別新式類與經典類

新式類vs經典類?

'''class parent1(object):

pass

class parent2(object):

pass

class sub1(parent1,parent2):

pass

# print(sub1.__bases__)

print(parent1.__bases__)

print(parent2.__bases__)

繼承的應用:

注意:派生:子類中新定義的屬性,子類再使用時始終以自己的為準。

繼承父類,可以在父類裡把子類裡相似的獨有屬性給摘出來,然後讓子類繼承使用。

物件查詢屬性的順序:物件自己---》物件的類-----》父類-----》父類----》

#派生:子類中新定義的屬性,子類在使用時始終以自己的為準

class oldboypeople: #父類

school = 'oldboy'

def __init__(self,name,age,***): #把子類中屬性相似的拿出來。

self.name = name #tea1.name='egon'

self.age = age #tea1.age=18

self.*** = *** #tea1.***='male'

class oldboystudent(oldboypeople):

def choose_course(self): #學生裡面的獨有屬性已經被拿出來了,所以不用寫了。直接繼承父類的。

print('%s is choosing course' %self.name)

class oldboyteacher(oldboypeople):

# tea1,'egon',18,'male',10

def __init__(self,name,age,***,level):

# self.name=name

# self.age=age

# self.***=***

oldboypeople.__init__(self,name,age,***)

self.level=level

def score(self,stu_obj,num):

print('%s is scoring' %self.name)

stu_obj.score=num

stu1=oldboystudent('耗哥',18,'male')

tea1=oldboyteacher('egon',18,'male',10)

#物件查詢屬性的順序:物件自己-》物件的類-》父類-》父類。。。

# print(stu1.school)

# print(tea1.school)

# print(stu1.__dict__)

# print(tea1.__dict__)

tea1.score(stu1,99)

print(stu1.__dict__)

# 在子類派生出的新功能中重用父類功能的方式有兩種:

#1、指名道姓訪問某乙個類的函式:該方式與繼承無關

繼承與派生

實驗內容 建立乙個基類,兩個派生類,讓每乙個派生類都包含乙個函式area 分別用來返回矩形和三角形的面積。用建構函式對height和width進行初始化。要求通過基類指標訪問虛函式的方法。純虛函式 virtual double area 0 純虛函式的作用是在基類中為派生類保留乙個函式的名字,以便派...

繼承與派生

在c 中,所謂 繼承 就是在乙個已存在的類的基礎上建立乙個新的類。已存在的類成為 基類 新建立的類成為 派生類 乙個新類從已有的類那裡獲得其已有特性,這種現象成為累的繼承。從另一角度說,從已有的類產生乙個新的子類,稱謂累的派生。派生類的宣告方式 class 派生類名 繼承方式 基類名 派生類新增加的...

繼承與派生

類的繼承與派生 類的繼承,是新的類從已有類那裡得到已有的特性。從另乙個角度來看這個問題,從已有類產生新類的過程就是類的派生。原有的類稱為基類或父類,產生的新類稱為派生類或子類。乙個派生類可以同時有多個基類,這種情況就稱為多繼承 乙個派生類只有乙個直接基類的情況,稱為單繼承。在派生的過程中 派生出來的...