首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python的类和对象

Python的类和对象

作者头像
企鹅号小编
发布2018-01-08 09:37:38
8370
发布2018-01-08 09:37:38
举报
文章被收录于专栏:编程编程

对象=属性(特征)+方法(行为)

类:在python中,把具有相同属性和方法的对象归为一个类(class)

self:

init()构造方法,只要实例化一个对象,这个方法就会在对象被创建时自动调用。

公有和私有

变量名“隐藏

这只是伪私有,其实所有的类都是可以被外部调用的。

继承

需要注意,如果子类中定义与父类同名的方法或者属性,则会自动把父类覆盖掉。

继承的另一个例子

下面试试科比:

kobe没有x属性,因为在Kobe类中,重写了魔法方法init_(),但是没有初始化科比的x坐标和y坐标,因此调用move()会出错。解决方法:在kobe类中重写__init()方法的时候先调用基类Ball()的init方法。

kobe也可以成功运行:

这里需要注意的是,这个self并不是父类Ball的实例对象,而是子类Kobe的实例对象,所以说未绑定指并不需要绑定父类的实例对象,使用子类的实例对象代替即可。

不理解也没关系,因为,super函数可以代替它

super

运行之后得到:

super函数的神奇之处在于,你不需要给出任何基类的具体名字,它会自动找到所有基类以及对应的方法。

多重继承

组合

把不同的类直接放进去实例化,就叫组合:

运行 组合.py得到:

类、类对象和实例对象

实例对象会把类对象进行赋值覆盖。

本文来自企鹅号 - 我的朋友王彦祖媒体

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文来自企鹅号 - 我的朋友王彦祖媒体

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档