25 python類的普通成員變數和私有成員變數

2021-10-25 06:18:02 字數 2160 閱讀 9579

我們來演示下:

類的建立,成員變數,建構函式和析構函式,普通成員函式,訪問私有成員變數。

print

("test class"

)class

video

(object):

# 4、私有成員變數 兩個下劃線開頭定義的變數就是私有成員變數

__name =

"private name"

# 3、直接宣告成員變數

# 宣告的意思是這個變數的空間不產生,只有當video生成物件的時候這個空間才產生,所以叫宣告

age =

20 path =

""# 建構函式

def__init__

(self, path)

:print

("create video"

) self.name =

"public name"

self.path = path

print

("path is"

, self.path)

# python約定了我們函式名全部是小寫

defget_name

(self)

:return self.__name

# 析構函式

def__del__

(self)

:print

("delete video"

)# 其中的這個__main__是入口模組名稱

# 建構函式傳遞引數的方式,是在我們生成物件的時候直接傳進去

video1 = video(

"d:/video.mp4"

)print

(video)

# 1、隱式的通過物件生成成員變數

video1.title =

"title test"

print

("title ="

, video1.title)

print

(video1)

print

(dir

(video1)

)print

("end"

)# 2、隱式的通過self生成成員變數

print

("video1.name ="

, video1.name)

# 3、直接宣告成員變數

print

("video1.age ="

, video1.age)

# 私有成員變數無法直接訪問

# print(video1.__name)

print

("video1.get_name() ="

, video1.get_name(

))

程式輸出:

test class

create video

path is d:/video.mp4

delete video

'__main__.video'

>

title = title test

<__main__.video

object

at0x000001e5adf30a58

>

['_video__name', '__class__', '__del__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'age', 'get_name', 'name', 'path', 'title']

endvideo1.name = public name

video1.age = 20

video1.get_name() = private name

python類的成員 Python類成員

乙個是乙個類屬性,另乙個是乙個例項屬性。它們是不同的,但是它們之間的關係密切相關,使得它們在時間上看起來一樣。它與python查詢屬性的方式有關。有層次結構。在簡單的情況下,它可能如下所示 instance subclass superclass object built in type 當你在這樣...

類的普通成員函式的指標

很 多朋友都知道虛函式有虛函式指標,並且存放在物件的虛函式表中,它和普通成員變數一樣與物件相關,因此虛函式的指標是和物件級的。乙個類的普通成員函式是 類級的,因此普通成員函式的指標也是類級的。乙個類的普通成員函式的指標,少有文獻提及,因為很少需要用到普通成員函式的指標。儘管如此,在一些特殊的場 合,...

類的普通成員函式的指標

很多朋友都知道虛函式有虛函式指標,並且存放在物件的虛函式表中,它和普通成員變數一樣與物件相關,因此虛函式的指標是物件級的。乙個類的普通成員函式是類級的,因此普通成員函式的指標也是類級的。乙個類的普通成員函式的指標,少有文獻提及,因為很少需要用到普通成員函式的指標。儘管如此,在一些特殊的場合,還是有可...