python類的封裝

2022-07-06 13:06:09 字數 1492 閱讀 5748

# 廣義的封裝: 例項化乙個物件,給物件空間封裝一些屬性.

# 狹義的封裝: 私有制.

一、私有屬性(變數)

#

私有靜態屬性,對於私有靜態屬性,類的內部可以訪問,

# 對於私有靜態字段來說,只能在本類中內部訪問,類的外部,派生類均不可訪問.

class

b:

__money = 100000

class

a(b):

name = '

alex

'__age = 1000

deffunc(self):

print(self.__age

)

print(a.__age) #

對於私有靜態字段,類的內部可以訪問.

print('

func....')

deffunc1(self):

print(self.__money

)

print(a.__money

)a1 =a()

print

(a1.name)

print

(a.name)

#print(a1.__age) # 無法訪問

#print(a.__age) # 無法訪問

a1.func() #

通過內部方法呼叫方式訪問

二、私有方法

類的內部可以訪問,外部不能訪問。

#

私有方法

class

b:

__money = 100000

def__f1

(self):

print('b'

)class

a(b):

name = '

alex

'def

__func

(self):

print('

func....')

deffunc1(self):

self.

__func() #

類的內部可以訪問

a1 =a()

a1.func1()

#類的派生類也不能訪問.

b1 =b()

b1.__f1() #

外部不能訪問

class

parent:

def__func

(self):

print('

in parent func')

def__init__

(self):

self.

__func

()class

son(parent):

def__func

(self):

print('

in son func')

son1 = son()

python類的封裝demo

class houseitem def init self,name,area self.name name self.area area def str self return s 占用面積 2f平方公尺 self.name,self.area class house def init self,...

python 測試類的封裝

1.嵌入測試 測試的資料與 嵌在一起寫在注釋中 from doctest import testmod def test func array 測試的輸入資訊寫在注釋中,表示輸入 輸出在下一行,呼叫testmod 會檢查輸入與注釋中的輸出是否相同 print test func 20,30,70 4...

Python 封裝物件類

python雖然是解釋型語言,但從設計之初就已經是一門物件導向的語言,對於python來說一切皆為物件。正因為如此,在python中建立乙個類和物件是很容易的,當然如果習慣面向過程或者函式的寫法也是可以的,python並不做硬性的限制。在很多場景,我們都需要封裝乙個物件類,這樣操作起來很方便快捷,接...