首页 > 文章列表 > 封装在Python中是什么?

封装在Python中是什么?

Python 封装 关键词
454 2023-09-01

封装是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 中的访问修饰符,以了解封装和数据隐藏的概念< /p>

  • 公开
  • 私人
  • 受保护

公共访问修饰符

公共成员可以从类内部或外部访问。

私有访问修饰符

私有成员只能在类内部访问。通过在成员名称前添加两个下划线来定义私有成员,例如

__age

受保护的访问修饰符

受保护的成员可以访问。来自类及其子类的内部。通过在成员名称前添加下划线来定义受保护的成员,例如

_points