Python程序设计教程第9章-面向对象程序设计.pptxVIP

Python程序设计教程第9章-面向对象程序设计.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

第9章-面向对象程序设计

本章目标了解面向过程和面向对象两大编程思想掌握类的定义掌握对象的创建掌握属性和方法的调用掌握面向对象的三大特征掌握动态语言的特点掌握Object类的常用方法了解深拷贝与浅拷贝

两大编程思想面向过程面向对象功能上的封装典型代表:属性和行为上的封装典型代表:

两大编程思想面向过程面向对象区别事物比较简单,可以用线性的思维去解决事物比较复杂,使用简单的线性思维无法解决共同点面向过程和面向对象都是解决实际问题的一种思维方式二者相辅相成,并不是对立的?解决复杂问题,通过面向对象方式便于我们从宏观上把握事物之间复杂的关系,方便我们分析整个系统,具体到微观操作,仍然使用面向过程方式来处理面向过程与面向对象的异同点

类和对象类是怎么来的?酒水生鲜日用百货

类和对象类是怎么来的?是由N多个对象抽取出“像”的属性和行为从而归纳总结出来的一种类别

类和对象在Python中一切皆对象worldhellopython字符串对象str字符串类数对象int整数类型

类和对象自定义数据类型的语法结构为class类名():pass创建对象的语法格式为:对象名=类名()类(图纸)对象(具体实例)

类的组成类类属性实例属性实例方法静态方法类方法直接定义在类中,方法外的变量定义在__init__方法中,使用self打点的变量定义在类中的函数,而且自带参数self使用装饰器@staticmethod修饰的方法使用装饰器@classmethod修饰的方法

动态绑定属性和方法每个对象的属性名称相同,但属性值不同可以为某个对象绑定独有的属性或方法

动态绑定属性和方法

面向对象的三大特征封装隐藏内部细节,对外提供操作方式继承是在函数调用时,使用“形参名称=值”的方式进行传参,传递参数顺序可以与定义时参数的顺序不同多态是在函数定义时,直接对形式参数进行赋值,在调用时如果该参数不传值,将使用默认值,如果该参数传值,则使用传递的值

面向对象的三大特征封装隐藏内部细节,对外提供操作方式权限控制是通过对属性或方法添加单下划线、双下划线以及首尾双下划线来实现单下划线开头:以单下划线开头的属性或方法表示protected受保护的成员,这类成员被视为仅供内部使用,允许类本身和子类进行访问,但实际上它可以被外部代码访问。双下划线开头:表示private私有的成员,这类成员只允许定义该属性或方法的类本身进行访问首尾双下划线:一般表示特殊的方法

面向对象的三大特征继承继承的概念也源于人们生活,子孙辈会从父辈那里继承一些体貌特征,但子孙辈又不完全是父辈的翻版,还会有自己的一些特征

面向对象的三大特征继承在Python中一个子类可以继承N多个父类一个父类也可以拥有N多个子类如果一个类没有继承任何类,那么这个类默认继承的是object类继承的语法结构:class类名(父类1,父类2….,父类N): pass

面向对象的三大特征子类继承了父类就拥有了父类中公有成员和受保护的成员父类的方法法并不能完全适合子类的需要求这个时候子类就可以重写父类的方法子类在重新父类的方法时,要求方法的名称必须与父类方法的名称相同,在子类重写后的方法中可以通过super().xxx()调用父类中的方法方法重写父类子类1子类2父类的方法子类1重写子类2重写

面向对象的三大特征多态指的就是“多种形态”,即便不知道一个变量所引用的对象到底是什么类型,仍然可以通过这个变量调用对象的方法。在程序运行过程中根据变量所引用对象的数据类型,动态决定调用哪个对象中的方法。Python语言中的多态,根本不关心对象的数据类型,也不关心类之间是否存在继承关系,只关心对象的行为(方法)。只要不同的类中有同名的方法,即可实现多态

object类所有类直接或间接的父类所有类都拥有object类的属性和方法objectobject类中特殊的方法功能描述__new__()由系统调用,用于创建对象__init__()创建对象时手动调用,用于初始化对象属性值__str__()对象的描述,返回值是str类型,默认输出对象的内存地址。

特殊方法运算符特殊方法功能描述+__add__()执行加法运算-__sub__()执行减法运算,=,==__lt__(),__le__(),__eq__()执行比较运算,=,!=__gt__(),__ge__(),__ne__()执行比较运算*,/__mul__(),__truediv__()执行乘法运算,非整除运算%,//__mod__(),__floordiv__()执行取余运算,整除运算**__pow__()执行幂运算

特殊属性特殊属性功能描述obj.__dict__对象的属性字典obj.__class__对象所属的类class.__bases__类的父

您可能关注的文档

文档评论(0)

***** + 关注
实名认证
文档贡献者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2025年02月18日上传了教师资格证

1亿VIP精品文档

相关文档