Python基礎之面向對象:類的定義、實例化、調用+繼承與重寫

類的定義
class ClassName:
    #定義屬性
    name = "yang"
    age = 20
    #定義方法
    def fun(self):#類中的方法至少有一個參數,第一個參數指向創建的實例本身,最好按照約定參數名self,也可自定義參數名
        print("")
    def gitInit(self): #類中的方法中使用類中屬性通過self調用
        print("name:{}age:{}".format(self.name,self.age))


#類的實例化
mClassName = ClassName()

#類的調用
print(mClassName.name) #調用類中的屬性 獲取值
mClassName.age = 30  #調用類中的屬性 寫入值
mClassName.gitInit() #調用類中的方法

#構造函數
__init__() 當類中定義了這個方法,當類實例化時自動調用這個方法,可以有多個參數

class Text:
    #定義屬性
    name = ""
    age = 0
    __sex = "" #__雙下劃線定義爲私有的 外界不能調用
    def __init_(self,name,age):
        self.name = name
        self.age = age

    def getAge(self): #__雙下劃線定義爲私有的 外界不能調用
        pass

    def __setAge(self): #__雙下劃線定義爲私有的 外界不能調用
        pass

mText = Text("yang",30)

#當屬性和方法前加__定義爲私有屬性和方法 外界不能調用


#繼承與重寫
class 類名(父類名): #繼承的寫法

class Texture(Text):   #單一繼承
    def __init_(self,name,age,sex):
        Text.__init_(self,name,age) #構造父類
        self.sex = sex

    #重寫方法 父類中有的方法 不滿足需求 重寫方法覆蓋父類方法
    def getAge(self):
        pass

    #擴展方法 父類中沒有的方法
    def getSex(self):
        pass

class Texture(Text,Text1):   #多繼承
    pass

mTexture = Texture()
mTexture.getAge() 調用的時Text中的方法 多繼承的類誰在前面誰先調用

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