下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922
论坛 >编程语言 >Python 面向对象(初级篇二)

Python 面向对象(初级篇二)

spring发布于 2017-09-06 09:35查看:990回复:1

        紧接着上一篇文章,我们来讲一下面向对象的三大特性

        

     面向对象三大特性

        面向对象的三大特性是指:封装、继承和多态。

        一、封装

        封装,顾名思义就是将内容封装到某个地方,以后再去调用被封装在某处的内容。

        所以,在使用面向对象的封装特性时,需要:

            将内容封装到某处

            从某处调用被封装的内容

        第一步:将内容封装到某处

1504661422877637.jpg

        self 是一个形式参数:

        当执行 obj1 = Foo(‘wupeiqi’, 18 ) 时,self 等于 obj1

        当执行 obj2 = Foo(‘alex’, 78 ) 时,self 等于 obj2

        所以,内容其实被封装到了对象 obj1 和 obj2 中,每个对象中都有 name 和 age 属性,在内存里类似于下图来保存。

1504661542783259.jpg


        第二步:从某处调用被封装的内容

        调用被封装的内容时,有两种情况:

              通过对象直接调用

              通过self间接调用

        1、通过对象直接调用被封装的内容

        上图展示了对象 obj1 和 obj2 在内存中保存的方式,根据保存格式可以如此调用被封装的内容:对象.属性名

1504661586201225.jpg

        2、通过self间接调用被封装的内容

        执行类中的方法时,需要通过self间接调用被封装的内容

1504661623398179.jpg

        综上所述,对于面向对象的封装来说,其实就是使用构造方法将内容封装到 对象 中,然后通过对象直接或者self间接获取被封装的内容。


收藏(0)0
查看评分情况

全部评分

此主贴暂时没有点赞评分

总计:0

回复分享

共有1条评论

  • IT宅男
  • mr jack
  • Mr ken
  • Mright
  • cappuccino
  • YUI
  • 课课家运营团队
  • 课课家技术团队1
  • 酸酸~甜甜
  • 选择版块:

  • 标题:

  • 内容

  • 验证码:

  • 标题:

  • 内容

  • 选择版块:

移动帖子x

移动到: