Python编程入门实战教程 第10章 类与面向对象.ppt

Python编程入门实战教程 第10章 类与面向对象.ppt

  1. 1、本文档共68页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
定义一个包含属性num与静态方法static_method()的类Example。 class Example: num = 10 # 类属性 @staticmethod # 定义静态方法 def static_method(): print(f"类属性的值为:{Example.num}") print("---静态方法") 01 面向对象 02 类与对象 03 构造方法与析构方法 04 类方法和静态方法 05 实例1:银行管理系统 06 继承 银行管理系统是一个集开户、查询、取款、存款、转账、锁定、解锁、退出等一系列的功能的管理系统。 开户 查询 取款 存款 转账 锁定 解锁 退出 本实例要求编写程序,实现一个具有上述功能的银行管理系统。 继承(inheritance) 继承描述的是类与类之间的关系,通过继承,新生类可以在无需赘写原有类的情况下,对原有类的功能进行扩展。 汽车类 普通特性 与功能 轿车类 普通特性 与功能 其它特性 与功能 继承 多态(?polymorphism) 多态指同一个属性或行为在父类及其各派生类中具有不同的语义。 封装、继承、多态是面向对象程序设计的三大特征,它们的简单关系如下图所示。 01 面向对象 02 类与对象 03 构造方法与析构方法 04 类方法和静态方法 05 实例1:银行管理系统 06 继承 面向对象的思想中提出了两个概念:类和对象。 类 类是对多个对象共同特征的抽象描述,它是对象的模板。 对象 对象用于描述现实中的个体,它是类的实例。 厂商在生产汽车之前会先分析用户需求,设计汽车模型,制作设计图样,设计图通过之后工厂再依照图纸批量生产汽车。 类中可以定义数据成员和成员函数,数据成员用于描述对象特征,成员函数用于描述对象行为,其中数据成员也被称为属性,成员函数也被称为方法。 class 类名: 属性名 = 属性值 def 方法名(self): 方法体 类定义完成后不能直接使用,这就好比画好了一张房屋设计图纸,此图纸只能帮助人们了解房屋的结构,但不能提供居住场所。 为满足居住需求,需要根据房屋设计图纸搭建实际的房屋。同理,程序中的类需要实例化为对象才能实现其意义。 对象的创建 创建对象的格式如下: 对象名 = 类名() 访问对象成员 若想在程序中真正地使用对象,需掌握访问对象成员的方式。对象成员分为属性和方法,它们的访问格式分别如下: 对象名.属性 对象名.方法() 类中定义的属性和方法默认为公有属性和方法,该类的对象可以任意访问类的公有成员。 为了契合封装原则,保证类中的代码不被外部代码轻易访问。 Python支持将类中的成员设置为私有成员,在一定程度上限制对象对类成员的访问。 定义私有成员 Python通过在类成员名之前添加双下划线(__)来限制成员的访问权限,语法格式如下: __属性名 __方法名 定义私有成员 例如,定义一个包含私有属性__weight和私有方法__info()的类PersonInfo。 class PersonInfo: __weight = 55 # 私有属性 def __info(self): # 私有方法 print(f"我的体重是:{__weight}") 私有成员的访问 创建PersonInfo类的对象person,通过该对象访问类的属性: person = PersonInfo() person.__weight AttributeError: 'PersonInfo' object has no attribute '__weight' 私有成员的访问 注释访问私有属性的代码,在程序中添加如下的访问类中私有方法的代码: person = PersonInfo() # person.__weight person.__info() AttributeError: 'PersonInfo' object has no attribute '__info' 由以上展示的错误信息可以判断,对象无法直接访问类的私有成员。 结 论 class PersonInfo: __weight = 55 # 私有属性 def get_weight(self): print(f'体重:{self.__weight}kg') person = PersonInfo() person.get_weight() 私有属性可在公有方法中通过指代对象本身的默认参数“self”访问,类

文档评论(0)

dllkxy + 关注
实名认证
内容提供者

本文库主要涉及建筑、教育等资料,有问题可以联系解决哦

版权声明书
用户编号:5213302032000001
认证主体丁**

1亿VIP精品文档

相关文档

相关课程推荐