封装在Python中是什么?
封装是Python、Java等面向对象语言的关键概念之一。封装用于限制对方法和变量的访问。在封装中,代码和数据被包装在一个单元中,防止被意外修改。
封装是将数据(变量)和作用于数据(方法)的代码包装在一起作为一个单元的机制。在封装中,一个类的变量将对其他类隐藏,只能通过当前类的方法来访问。
封装示例
假设我们有一家公司向学生、工程师和专业人士销售课程。该公司的不同部门包括运营、财务、会计、销售等。现在,如果会计部门的员工需要2022年的销售记录,那么他/她无法直接访问。
要访问,客户部门的员工需要获得销售部门团队成员的许可。因此,销售数据对其他部门是隐藏的,同样,公司的财务数据只能由财务数据访问,对其他部门是隐藏的。账户、销售、财务、运营、营销等数据对其他部分隐藏
立即学习“Python免费学习笔记(深入)”;
在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 objectsst1 = 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 abovest1.demofunc()st2.demofunc()st3.demofunc()st4.demofunc()
输出
I am SteveI got Rank 1I am ChrisI got Rank 2I am MarkI got Rank 3I am KateI got Rank 4
Python 访问修饰符
让我们看看 Python 中的访问修饰符,以了解封装和数据隐藏的概念−
- 公开
- 私人
- 受保护
公共访问修饰符
公共成员可以从类内部或外部访问。
私有访问修饰符
私有成员只能在类内部访问。通过在成员名称前添加两个下划线来定义私有成员,例如 −
__age
受保护的访问修饰符
受保护的成员可以访问。来自类及其子类的内部。通过在成员名称前添加下划线来定义受保护的成员,例如 −
_points