Python 面向?qū)ο缶幊?/h2>

class

python 是動態(tài)語言,對于每一個實例,都可以直接給他們的屬性賦值。

class Person():
    pass


xiaohong = Person()
xiaohong.name = 'xiaoming'
xiaohong.age = 20

xiaoming = Person()
xiaoming.size = 50

print(xiaoming.size)
print(xiaohong)

初始化實例屬性

在定義類時,可以為Person類添加一個特殊的_init_()方法,當(dāng)創(chuàng)建實例時,_init_()方法被自動調(diào)用,每個實例都統(tǒng)一擁有屬性。

class Person():
    def __init__(self,name,age):
        self.name = name
        self.age = age


xiaohong = Person('xiaoming',20)

print(xiaohong.name)

訪問限制

__ 雙下劃線開頭的屬性不能被外部訪問

class Person():
    def __init__(self,name,age):
        self.name = name
        self.age = age
        self.__class = 1


__class 屬性不能直接被外部訪問
以'__xx__' 形式存在的屬性,可以被外部訪問,在python中為特殊屬性。

類屬性

class Person(object):
    address = 'Earth'
    def __init__(self, name):
        self.name = name

可以直接根據(jù)類訪問,不需要實例化
Person.address
當(dāng)然實例化的對象也可以訪問

實例屬性和類屬性

優(yōu)先級  :   類屬性 > 實例屬性

實例方法

和java 類中定義方法類似

@classmethod 類方法

在class中定義的全是實例方法,通過標(biāo)記一個 @classmethod,該方法將綁定到類上,而非類的實例。類方法的第一個參數(shù)將傳入類本身,通常將參數(shù)名命名為 cls

繼承

super(Student, self)將返回當(dāng)前類繼承的父類,

class Person(object):
    def __init__(self, name):
        self.name = name


class Student(Person):
    def __init__(self, name, score):
        super(Student, self).__init__(name)
        self.score = score


xiaobai = Student(1, 1)


print(isinstance(xiaobai,Person))
print(isinstance(xiaobai,Student))

多態(tài)

多重繼承

class A(object):
    def __init__(self, a):
        print 'init A...'
        self.a = a

class B(A):
    def __init__(self, a):
        super(B, self).__init__(a)
        print 'init B...'

class C(A):
    def __init__(self, a):
        super(C, self).__init__(a)
        print 'init C...'

#多重繼承
class D(B, C):
    def __init__(self, a):
        super(D, self).__init__(a)
        print 'init D...'
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容