成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

類的繼承和類繼承運(yùn)用



```通過(guò)繼承創(chuàng)建的新類稱為“子類”或“派生類”。
被繼承的類稱為“基類”、“父類”或“超類”。

繼承概念的實(shí)現(xiàn)方式主要有2類:實(shí)現(xiàn)繼承、接口繼承。
1、實(shí)現(xiàn)繼承是指使用基類的屬性和方法而無(wú)需額外編碼的能力;
2、接口繼承是指僅使用屬性和方法的名稱、但是子類必須提供實(shí)現(xiàn)的能力(子類重構(gòu)爹類方法);

## 最簡(jiǎn)單的繼承
class person(object):
    def talk(self):
        print('talk english....')

class ypeople(person):
    # def talk(self):   #要是沒(méi)有重新定義talk會(huì)調(diào)用父類里的talk
         print("talk chinese")
    def walk(self):
        print("yperson is runing....")

b=ypeople()
b.talk()
b.walk()

## 先繼承再重構(gòu)
class person(object): 父類
    def __init__(self,name,age):
        self.name=name
        self.age=age
        self.sex="normal"

    def talk(self):
        print('talk english....')

class bperson(object):
    pass

class ypeople(person):
    def __init__(self,name,age,strength): #先繼承,再重構(gòu)
        person.__init__(self,name,age)
        self.www="www"
        print(self.name,self.age,self.sex)
    def talk(self):   #要是沒(méi)有重新定義talk會(huì)調(diào)用父類里的talk
        person.talk(self) #繼承方法(一般不這么做,重復(fù)執(zhí)行)
        print("talk chinese")
    def walk(self):
        print("yperson is working...")

b=ypeople("王東",30,"strong")
b.talk()
b.walk()

## 類的繼承運(yùn)用例子
class School(object):
    """"學(xué)校成員基類"""
    number=0
    def __init__(self,name,age,sex):
        self.name=name
        self.age=age
        self.sex=sex
        self.enroll() #在基類里內(nèi)部調(diào)用(相當(dāng)于子類默認(rèn)調(diào)用)

    def enroll(self):
        """注冊(cè)"""
        print("%s歡迎加入我們學(xué)院!"%self.name)
        School.number+=1 #把值賦給公有屬性(變成全局的)直接self.number只是在實(shí)例里面創(chuàng)建了一個(gè)變量number=0然后加1
    def tell(self):
        """打印自己的信息"""
        print("------info:%s-------"%self.name)
        for k,v in self.__dict__.items():
            print("\t",k,v)
        print("------end-------" )

    def __del__(self):  # 析構(gòu)
        print("[%s] 被開(kāi)除了!"%self.name)
        School.number-=1

class newschool(object):
    def openschool(self,addr):
        print("open in the %s"%addr)

class Teacher(School,newschool): # 多繼承(繼承多個(gè)類)
    """講師類"""
    def __init__(self,name,age,sex,salary,course):
        #School.__init__(self,name,age,sex) #經(jīng)典類
        super(Teacher,self).__init__(name,age,sex) # 新式類
        self.salary=salary
        self.coures=course

    def teaching(self):
        print("Teacher [%s] is teaching [%s]"%(self.name,self.coures))

class Student(School):
    """學(xué)生類"""
    def __init__(self,name,age,sex,course,fee):
        School.__init__(self,name,sex,age)
        self.course=course
        self.fee=fee
        self.amount=0

    def pay_fee(self,amount):
        print("student [%s] has just paid [%s]"%(self.name,self.amount))
        self.amount+=amount
t1=Teacher("王肖",29,'F*M',20000,"Python")
s1=Student("王鼎",26,"N/A",'Python',30000)
s2=Student("蘇曉",22,"F","Python",5000)

print(School.number) #輸出總共創(chuàng)建次數(shù)
print(t1.number) #輸出t1實(shí)例本身創(chuàng)建次數(shù)
print(School.number) #輸出總共創(chuàng)建次數(shù)
del s1 #刪除s1
print(School.number) #輸出總共創(chuàng)建次數(shù)
a=s1.__dict__ #把信息轉(zhuǎn)換成列表
print(a)
t1.tell()
t1.openschool("上海") #多繼承測(cè)試

當(dāng)前題目:類的繼承和類繼承運(yùn)用
本文來(lái)源:http://jinyejixie.com/article6/iejjig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)、商城網(wǎng)站營(yíng)銷型網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)公司移動(dòng)網(wǎng)站建設(shè)、App設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)
永兴县| 汉寿县| 石河子市| 台东市| 普陀区| 桐柏县| 平邑县| 沙坪坝区| 东莞市| 康定县| 乐东| 尼木县| 响水县| 浑源县| 柳州市| 通榆县| 鄯善县| 呈贡县| 昔阳县| 淮阳县| 小金县| 阜新| 临武县| 武陟县| 通河县| 博湖县| 博爱县| 湖州市| 余姚市| 来凤县| 上林县| 浦东新区| 来安县| 长汀县| 浙江省| 慈溪市| 克什克腾旗| 广南县| 扶沟县| 乡宁县| 彭水|