Python入門--20--類、對象
OO=Object Oriented 面向對象
python是面向對象的編程語言
OO的特征:
1、封裝:把一堆東西都扔到一起,變為一個類
2、繼承:假如一個類裏面
3、多態:不同的類有相同名稱的函數,如果你分別調用,也可以。。。好像沒什麽卵用
1、python的self
你就這樣用就好,在class的def的參數中:
class B:
def setname(self,name):
self.name=name
def kick(self):
print(‘我叫%s,該死的,誰踢我....‘%self.name)
你就這樣用就好 ,寫def的時候第一個參數是self就好
調用的話要這樣:b=B(‘土豆‘)
b=kick() #會有輸出
2、python的__init__(self)
class B:
def __init__(self,name):
self.name=name
def kick(self):
print(‘我叫%s,該死的,誰踢我....‘%self.name)
調用的話要這樣:b=B(‘土豆‘)
b=kick() #會有輸出
__init__替代了setname這個函數,以後會詳細講__init__
3、python的私有變量
class Person:
__name=‘zai zhe li‘
你現在輸出:p=Person()
print(p.__name) #是會報錯的
想輸出就要像這樣:p=Person()
print(p._Person__name) #_類名__變量名稱
python是面向對象的編程,所以他是有類,也是有對象的,不像單身狗一樣,連對象都沒有
用class定義一個類,類名的第一個字母必須大寫:
class CC:
def setxy(self,x,y):
self.x=x
self.y=y
def printxy(self):
print(self.x,self.y)
然後:dd=CC() 定義一個CC類的對象,也就類是一個模板,dd是成品,一個模板可以制造出很多個成品。
使用del CC可以刪除這個類,蛋是刪除後,這個對象依舊還可以用
可以使用
dd.setxy(4,5),對dd這個對象中的x、y賦值,
dd.__dict__ 查看函數賦值情況
Python入門--20--類、對象