首頁 >後端開發 >Python教學 >封裝在Python中是什麼?

封裝在Python中是什麼?

PHPz
PHPz轉載
2023-09-02 15:21:061628瀏覽

封裝在Python中是什麼?

封裝是Python、Java等物件導向語言的關鍵概念之一。封裝用於限制對方法和變數的存取。在封裝中,程式碼和資料被包裝在一個單元中,防止被意外修改。

封裝是將資料(變數)和作用於資料(方法)的程式碼包裝在一起作為一個單元的機制。在封裝中,一個類別的變數將對其他類別隱藏,只能透過當前類別的方法來存取。

封裝範例

假設我們有一家公司向學生、工程師和專業人士銷售課程。該公司的不同部門包括營運、財務、會計、銷售等。現在,如果會計部門的員工需要2022年的銷售記錄,那麼他/她無法直接存取。

要訪問,客戶部門的員工需要獲得銷售部門團隊成員的許可。因此,銷售數據對其他部門是隱藏的,同樣,公司的財務數據只能由財務數據訪問,對其他部門是隱藏的。帳戶、銷售、財務、營運、行銷等資料對其他部分隱藏

在Python中用類別實作封裝

封裝的另一個例子是類,因為類別將資料和方法組合成一個單元。這裡,自訂函數 demofunc() 顯示學生的記錄,我們可以在其中存取公共資料成員。使用物件 st1、st2、st3、st4,我們存取了類別的公共方法 demofunc() -

範例

class Students:
   def __init__(self, name, rank, points):
      self.name = name
      self.rank = rank
      self.points = points

   # custom function
   def demofunc(self):
      print("I am "+self.name)
      print("I got Rank ",+self.rank)

# create 4 objects
st1 = Students("Steve", 1, 100)
st2 = Students("Chris", 2, 90)
st3 = Students("Mark", 3, 76)
st4 = Students("Kate", 4, 60)

# call the functions using the objects created above
st1.demofunc()
st2.demofunc()
st3.demofunc()
st4.demofunc()

輸出

I am Steve
I got Rank  1
I am Chris
I got Rank  2
I am Mark
I got Rank  3
I am Kate
I got Rank  4

Python 存取修飾符

讓我們看看 Python 中的存取修飾符,以了解封裝和資料隱藏的概念

  • #公開
  • 私人
  • 受保護

公共存取修飾符

公共成員可以從類別內部或外部存取。

私有存取修飾符

私有成員只能在類別內部存取。透過在成員名稱前面加上兩個底線來定義私有成員,例如

__age

受保護的存取修飾符

受保護的成員可以存取。來自類別及其子類別的內部。透過在成員名稱前面加上底線來定義受保護的成員,例如

_points

以上是封裝在Python中是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除