class 類名:
賦值語句
賦值語句
.....
def語句定義函式
def語句定義函式
.....
例:
class
testclass
: data =
100def
setpdata
(self, value)
: self.data = value
defshowpdata
(self)
:print
("data:"
, self.data)
x = testclass(
)x.setpdata(
123)
x.showpdata(
)print
(x.data)
類物件
類物件支援兩種操作:屬性引用和例項化。
在類的內部,使用 def 關鍵字來定義乙個方法,與一般函式定義不同,類方法必須包含引數 self, 且為第乙個引數,self 代表的是類的例項。
類有乙個名為 __ init__() 的特殊方法(構造方法),該方法在類例項化時會自動呼叫,像下面這樣:
def
__init__
(self,value)
: self.data = value
類有乙個名為 __del __() 的特殊方法(析構方法),該方法在例項物件**時會自動呼叫,像下面這樣:
def
__del__
(self)
:del self.data
其他方法
觀察以下例子:
class
test
:def
add(a, b)
:return a + b
defadd2
(self, a, b)
:return a + b
#通過類物件呼叫方法
print
(test.add(2,
3))#5
print
(test.add2(2,
3,4)
)#7#建立例項物件
x = test(
)print
(x.add2(2,
3))#5
print
(x.add(2,
3))#報錯
解釋一下self
格式如下:
class 類名(父類名):
賦值語句
賦值語句
.....
def語句定義函式
def語句定義函式
.....
定義子類建構函式時注意新增:
#呼叫父類的構函
父類.__init__(self,n,a,w)
python同樣有限的支援多繼承形式。多繼承的類定義形如下例:
class 類名(父類名,父類名,父類名,父類名.....):
賦值語句
賦值語句
.....
def語句定義函式
def語句定義函式
.....
方法重寫
類的私有屬性
兩個下劃線開頭,宣告該屬性為私有,不能在類的外部被使用或直接訪問。在類內部的方法中使用時 self.屬性名。
類的私有方法
兩個下劃線開頭,宣告該方法為私有方法,只能在類的內部呼叫 ,不能在類的外部呼叫。self.方法名。
class
site
:def
__init__
(self, name, url)
: self.name = name # public
self.__url = url # private
defwho
(self)
:print
('name : '
, self.name)
print
('url : '
, self.__url)
def__foo
(self)
:# 私有方法
print
('這是私有方法'
)def
foo(self)
:# 公共方法
print
('這是公共方法'
) self.__foo(
)x = site(
'syc'
,'www.syc.com'
)x.who(
)# 正常輸出
x.foo(
)# 正常輸出
x.__foo(
)# 報錯
python3 中類的靜態方法、普通方法、類方法
class
classroom
: @staticmethod
deffun()
:print
("靜態方法"
) @classmethod
deffun1
(cls)
:print
("類方法"
)def
fun2
(self)
:print
("普通方法"
)if __name__ ==
'__main__'
: x = classroom(
) classroom.fun(
)#靜態方法
classroom.fun(
)#靜態方法
x.fun2(
)#普通方法
類的專有方法: python物件導向學習 python物件導向學習
物件導向最重要的概念就是類 class 和例項 instance 必須牢記類是抽象的模板,比如student類,而例項是根據類建立出來的乙個個具體的 物件 每個物件都擁有相同的方法,但各自的資料可能不同。物件導向三個概念 1.封裝 即把客觀事物封裝成抽象的類,並且類可以把自己的資料和方法讓可信的類進...
python物件導向總結 Python物件導向總結
python 物件導向 oop 1 物件導向 是乙個更大封裝,把乙個物件封裝多個方法 2 類 是對一些具有相同特徵或行為的事物的乙個統稱,是抽象的,不能直接使用 特徵被稱為屬性 行為被稱為方法 3 物件 是由類建立出來的乙個具體的存在,可以直接使用 先有類再有物件,類只有乙個,而物件可以有多個 類中...
python登入物件導向 python 物件導向
一 屬性和方法 1.a a 例項屬性 通過例項物件來新增的屬性就是例項屬性 a.count 10 例項方法都是在類中直接定義的 以self為第乙個引數的方法都是例項方法 當通過例項物件呼叫時,會自動傳遞當前物件作為self傳入 當通過類物件呼叫時,不會自動傳遞self a.test 等價於 a.te...