




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单元5面向对象的PythonPython不仅支持面向过程的程序设计,它还是一种面向对象的编程语言。5.1定义和使用类类的定义和使用跟函数的定义和使用有很多相似的地方。5.1.1定义类使用关键字“class”直接定义class<类名>: <语句1> <语句2>
… <语句3>通过继承的形式进行定义class<类名>(父类名): <语句1> <语句2> … <语句3>5.1.2使用类要使用类需要将类具体化,生成一个对象类实例化一个对象使用类中包含的变量(属性)或函数(方法)类的实例化:类名加圆括号对象名=类名()5.2类的属性和方法每一个类都具有自己的属性和方法。属性和方法是面向对象程序设计所独有的概念。属性是类所封装的数据方法则是类对数据进行的操作5.2.1类的属性类的属性实际上是类内部的变量。私有属性私有属性的调用__xxself.__xx5.2.2类的方法类的方法实际上是类内部的函数。1.定义类的方法使用def关键字定义。必须包含参数“self”,且“self”必须为第一个参数5.2.3类的专有方法以两条下划线开始并且以两条下划线结束的方法,称之为类的专有方法。方法描述__init__(self,…)构造函数,生成对象时调用__del__(self)析构函数,释放对象时调用__new__(cls,*args,**kwd)实例的生成操作__str__(self)在使用print语句时被调用__setitem__设置属性的值__delattr__(s,name)删除name属性__cmp__(src,dst)比较两个对象src和dst__getattr__(s,name)获取属性的值__getitem__(self,key)获取序列的索引key对应的值,等价于seq[key]__len__(self)在调用内联函数len()时被调用__call__(self,*args)把实例对象作为函数调用1.__init__()类的构造函数,用于初始化类的内部状态。2.__new__()在新式类中新出现的方法,它作用在构造方法建造实例之前。决定是否要使用该__init__()方法可以实现设计模式中的单例模式只能实例化1个对象3.__getitem__()如果类中把某个属性定义为序列,可以使用__getitem__()输出序列属性中的各个元素。4.__str__()__str__()用于表示对象代表的含义,返回1个字符串。5.3类的继承一个新类可以通过继承来获得已有类的方法以及属性等。通过继承而来的类也可以自己定义新的方法和属性。5.3.1类的继承可以继承父类的公有属性和公有方法。判断是否继承借助issubclass()函数issubclass(class,classinfo)5.3.2多重继承是指创建的类同时拥有几个类的属性和方法。在类名后边的圆括号中可以包含多个父类名父类名之间以逗号隔开5.4类的重写为什么重写重写这些属性或方法父类中的属性或方法不一定满足类的需要在子类中重新定义一个与父类属性或方法同名的属性或方法5.5装饰器它可以快速地给不同的函数或类插入相同的功能。使用特殊的符号“@”来实现5.5.1装饰函数将“@装饰器名称”放在函数定义行之前即可。如:装饰器名称为my_time装饰函数@my_ti
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 廉政风险防范管理工作实施方案(医院版)
- 明厨亮灶视频联网监管系统解决方案
- 老年友善管理工作制度(14篇)
- 海洋特色农产品开发
- 2025年石首市市直初中小学选调教师考试笔试试题(含答案)
- 2025年山东奇瑞汽车多岗招聘考试笔试试题(含答案)
- 新能源汽车抵押反担保服务协议
- 互联网餐饮配送服务合作协议
- 知识产权运营股权变更价格调整与支付条款补充协议
- 成都二手房买卖合同范本(带交易税费承担约定)
- 2025老年教育政策环境分析及教学模式创新路径研究报告
- 1-会计信息系统(闭卷)国开机考答案
- 2025年中国伺服电缆行业市场发展前景及发展趋势与投资战略研究报告
- 酒店安全奖惩规定
- 中医养生保健与康复护理
- 夫妻债务隔离约定协议书
- 康复辅助技术咨询师理论考试复习题库(含答案)
- C++冒泡排序实现试题及答案
- 《分子动力学模拟的应用》课件
- 职高高考语文试题及答案
- NIH-FDA-IND-IDE-II期III期临床试验方案模板
评论
0/150
提交评论