博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python-学习笔记1-面向对象编程
阅读量:6680 次
发布时间:2019-06-25

本文共 519 字,大约阅读时间需要 1 分钟。

1、面向对象最重要的概念就是类(Class)和实例(Instance),类是抽象的模板,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但各自的数据可能不同。

2、在类的内部定义访问数据的函数,就把数据封装了起来,这些和类的数据相关联的函数,叫做类的方法。

3、__开头的变量是私有变量,只有内部可以访问,若希望外部代码修改,可以在内部增加方法。

4、继承后,子类拥有了父类所有的功能(方法),继承的另一个好处是多态:对扩展开放——可以对父类添加子类,对修改封闭——不需要修改依赖父类的函数(开闭原则)

5、

对于静态语言(例如Java)来说,如果需要传入Animal类型,则传入的对象必须是Animal类型或者它的子类,否则,将无法调用run()方法。

对于Python这样的动态语言来说,则不一定需要传入Animal类型。我们只需要保证传入的对象有一个run()方法就可以了

动态语言的鸭子类型特点决定了继承不像静态语言那样是必须的。

6、数据封装、继承和多态是面向对象程序设计中最基础的3个概念。

7、使用__slots__要注意,__slots__定义的属性仅对当前类实例起作用,对继承的子类是不起作用的。

转载地址:http://merxo.baihongyu.com/

你可能感兴趣的文章
sql异常
查看>>
设计模式之代理模式学习
查看>>
学习OpenStack之(6):Neutron 深入学习之 OVS + GRE 之 Compute node 篇
查看>>
请问香港的面料市场在哪里_百度知道
查看>>
git gc内存错误的解决方案
查看>>
Android BroadcastReceiver实时监听电量
查看>>
《陈江挺-炒股的智慧》读书笔记
查看>>
使用 jQuery 和 CSS3 制作滑动导航菜单
查看>>
Nginx 日志文件切割
查看>>
jquery ajax异步加载table的方法
查看>>
Android学习四、Android中的Adapter
查看>>
WP8.1学习系列(第十章)——中心控件Hub设计指南
查看>>
MVC 打印解决方案--SNF快速开发平台3.1
查看>>
跟要钱的谈钱,跟有理想的人谈理想,不要错位(转)
查看>>
改良程序的11个技巧
查看>>
QGrphicsView, QGraphicsScene 和 QGraphicsItem 的区别
查看>>
Oracle 提示密码过期问题:the password will expire
查看>>
jQuery对象初始化的多种传参数形式
查看>>
栅格计算器函数之Con
查看>>
C/C++各种系统开发环境搭建
查看>>