0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

封装是什么意思?封装有何意义?

冬至配饺子 来源:多兰多 作者:Toranto 2022-08-18 15:54 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

封装

封装可以分为两层:

第一层:类就是一个袋子,里面可以放属性和方法。第二层:类中定义私有的属性和方法,只有类的内部能够调用(间接调用),外部无法直接访问。

Python中用双下划线开头的方式将属性和方法隐藏(设置成私有)

这里我们封装主要指的是第二层封装。

pYYBAGL97wmADOc5AAB4FckSBOI662.png

封装的意义

封装数据属性,可以让我们明确区分内外,控制外部对私有属性的操作行为。

小明:“说人话!”

pYYBAGL97yGALxP3AABDUsBG_KU504.png

从封装的角度看,外界是无法直接访问和操作私有属性的,所以我们通过一个__str__函数返回显示我们的私有属性。

poYBAGL97zuAEKGGAAAj1b3E1aA979.pngpYYBAGL970CAHCLSAABbKMgqSqE719.png

我们尝试操作一下私有属性:

pYYBAGL971yAcJQQAAAcWOhA2Jw479.pngpoYBAGL972GAcRWiAAB_3lFbyBU025.png

很显然我们无法直接进行更改,所以我们需要在内部再设立一个方法来间接调用它。

poYBAGL9732AeJZDAACjPg0b-Kk096.pngpoYBAGL974KACQ4yAAB8bm3Gjyw767.png

当然,到了这里不出意外是有一点意外的了。有大聪明发问了:为什么我需要间接调用,我直接person1=('Lynne',18)不就好了吗?还有,isinstance是什么东西?

我们先解决第一个问题:

是的没错,确实可以哈哈哈,但我们还是需要了解一下。

第二个问题:isinstance是一个用于判断类型的函数,会根据输入进行判断,最后返回一个bool值,True或False。通常用于if条件语句中。
其用法为:

isinstance(变量,类型)

pYYBAGL976OAFg_7AABI087u8uI839.pngpYYBAGL976iATrB4AABpLkTekDc873.png

其次,封装方法可以隔离复杂度。

举个栗子:假如我们去银行取款,那么取款的操作大致就包括输入密码,输入取款金额,打印流水,最后退出的四个操作。

但是对于使用者来说,我们只需要让其知道有取款这一功能即可,所有的方法统一包装起来,仅向外展示一个包装好的功能。第一,其余的功能我们可以隐藏起来;第二,隔离了复杂度,同时也提升了安全性。

poYBAGL977-Af2sVAACvA_l78vg458.png




审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • python
    +关注

    关注

    57

    文章

    4858

    浏览量

    89586
  • 封装元件
    +关注

    关注

    1

    文章

    4

    浏览量

    6756
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    半导体封装如何选亚微米贴片机

    半导体封装
    北京中科同志科技股份有限公司
    发布于 :2025年12月08日 15:06:18

    SM6T33CATV2:SMB封装600W功率33V电压

    封装
    jf_90953326
    发布于 :2025年11月04日 10:02:38

    TGV视觉检测 助力半导体封装行业# TGV检测# 自动聚焦系统# 半导体封装

    新能源半导体封装
    志强视觉科技
    发布于 :2025年09月10日 16:43:33

    MUN12AD03-SEC的封装设计对散热有何影响?

    模块占用的空间,同时提高散热效率。SMT封装有助于热量通过PCB传导到周围的散热片或散热结构。2. 裸焊盘设计:某些电源模块采用裸焊盘设计,这种设计可以增加散热面积,使得热量能够更有效地从模块传导到
    发表于 05-19 10:02

    用于LED封装推拉力测试的设备有哪些型号?#推拉力测试#

    LED封装
    力标精密设备
    发布于 :2025年05月07日 17:06:39

    SN74ALVC164245封装中,DL、DGG性能一致吗?

    PTN78060W的封装有两种:EUW(R-PDSS-T7)和EUY(R-PDSS-B7)。两种封装性能上是一致的吧?两种封装市面上都容易买到?我考虑使用T7的封装,是穿孔的,印制板
    发表于 02-14 06:55

    tlc2543封装有几种?

    封装有几种?
    发表于 02-13 07:34

    QFN封装和DFN封装有何区别?

    DFN封装和QFN封装作为技术先进的芯片封装形式,具有许多共同点。首先,它们都属于无引脚表面贴装封装结构,这使得它们在现代电子制造中具有极高的集成度和灵活性。
    的头像 发表于 12-30 11:23 3933次阅读

    sop框架焊点推力sop封装 二极管sot封装推拉力测试机测试参数设置

    封装
    力标精密设备
    发布于 :2024年12月10日 17:28:52

    先进封装有哪些材料

      半导体封装测试构成了晶圆制造流程的后阶段,紧随芯片制造步骤之后。此阶段涉及将制造完成的晶圆进行封装与测试,进而根据实际需求与功能特性,将通过测试的晶圆加工成芯片。封装的主要四大目标包括:保护芯片
    的头像 发表于 12-10 10:50 2447次阅读
    先进<b class='flag-5'>封装有</b>哪些材料