Python中的訪問器和修改器方法
Python中的訪問器和修改器方法用於訪問類的私有資料,這些資料無法從類外部訪問。在面向物件程式設計中,類物件的數劇被封裝,即物件資料保持私有,無法從物件外部訪問。可以使用Python中的訪問器和修改器方法從物件外部訪問這些私有資料。這些方法也稱為Python中的getter和setter方法。在本文中,我們將透過示例瞭解訪問器和修改器方法。
訪問器方法
訪問器方法用於訪問物件資料。可以使用訪問器方法訪問物件的私有變數。訪問器方法宣告為公共方法,返回物件的私有成員資料。訪問器方法也稱為getter方法,因為它們用於獲取物件資料。
在Python中,訪問器方法使用@property裝飾器定義。呼叫訪問器方法時,它會返回物件的私有成員變數值。
示例
在下面的示例中,我們將定義一個名為Person的類,其中包含一個私有變數_name。然後,我們建立一個name訪問器方法,該方法返回_name變數的值,它是Person類的私有成員變數。我們可以透過建立一個person物件並使用name訪問器方法訪問值來訪問_name屬性的值。
class Person:
def __init__(self, name):
self.__name = name
@property
def name(self):
return self.__name
person = Person("John")
print(person.name)
輸出
John
修改器方法
修改器方法用於修改物件的私有資料。修改器方法也稱為setter方法,因為它們用於設定/修改物件私有變數的值。修改器方法宣告為私有方法,修改物件變數的私有值。
在Python中,修改器方法使用@
示例
在下面的示例中,我們定義一個Person類,它具有一個私有_name變數。我們還分別使用@property和@name.setter裝飾器定義一個name訪問器方法和一個name修改器方法。name修改器方法在呼叫函式時傳遞值引數時修改_name變數的值。
class Person:
def __init__(self, name):
self.__name = name
@property
def name(self):
return self.__name
@name.setter
def name(self, value):
self.__name = value
person = Person("John")
person.name = "Jane"
print(person.name)
輸出
Jane
結論
訪問器和修改器方法用於面向物件程式設計中,以提供對物件私有變數的訪問。這些方法也稱為getter和setter方法,因為它們分別用於獲取和設定/修改物件的私有變數。Python中的訪問器和修改器方法分別使用@property和@<variable_name>.setter裝飾器定義。
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP