【Python】面向对象--03---封装我要把你封装起来

Hello,大家好,我是乔乔白术,今天是带来面向对象的第三篇内容。今天带来的是面向对象中的封装,想了解之前的内容,可以点击上面的合计,里面就有详细内容。

首先封装是什么?

我们打个例子

你的账号有多少钱?à数据的封装

你的爱好à数据的封装

你的账号是如何拥有这么多的钱的à方法的封装

那么为什么封装呢?

封装数据的主要原因就是为了保护隐私

封装方法的主要原因就是为了:隔离复杂度

在编程语言里,对外提供接口(入口),就是函数,成为接口函数,这与接口的概念还不一样,接口代表一组接口函数的集合体。

面向对象的封装有以下的特点:

公有成员是可以公开使用的,即可以在类的内部进行访问,也可以在外部程序中使用。

Python中类的成员函数、成员变量默认都是公开的。

私有成员在类的外部不能直接访问,一般在类的内部进行访问和操作,或者在类的外部通过调用

对象的公有成员方法来访问,这是类的封装特性的重要体现。

__xxx:以两个下划线开头,表示类的私有成员,一般只有类对象自己能访问,子类对象也不能直

接访问该成员,但可以通过“对象名._类名__xxx”这样的特殊方式来访问。

封装实质分为两个层面,但是无论哪种层面的封装,都要对外界提供好访问你内部隐藏内容的接口。

第一种:什么都不做,我们只能用类名.或者obj.的方式去访问里面的名字,这本身就是一种封装。

第二种: 类中把某些属性和方法隐藏起来(或者说定义成私有的),只在类的内部使用、外部无法访问,或者留下少量接口(函数)供外部访问。

私有方法我也在上面讲过了。
例如

class Point:
 x = 10
 __y = 20
 z = 30
 def get_x(self):
 return self.x
 def get_y(self):
 return self.__y
 def __get_z(self):
 return self.z

这就是封装,它看起来会麻烦些,但是也为一些复杂的代码提供了便利,但是一定要注意,python并不会真的阻止你访问私有的属性

目前关于面向对象的内容已经说了三期,我会根据后面的内容做个划分,在两期之内结束面向对象的内容!如果你对此特别感兴趣,可以看一下往期内容,如果遇到什么问题,可以私信博主,或者评论!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值