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

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

Python 面向对象(初级篇二)

spring发布于 2017-09-06 09:35查看:790回复: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

    移动到: