《Python程序设计与案例教程》课件chap10面向对象程序设计.ppt

《Python程序设计与案例教程》课件chap10面向对象程序设计.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 第10章 面向对象程序设计 第10章 面向对象程序设计 Python程序设计与案例教程 10.1 面向对象程序设计概述 1. 对象:现实世界中客观存在的事物 对象特征: (1)有一个名称用来唯一标识对象; (2)用一组状态用来描述其特征; (3)用一组操作用来实现其功能。 2. 类:对一组具有相同属性和相同操作对象的抽象 一个类的构造至少应包括以下方面: (1)类的名称; (2)属性结构,包括所用的类型、实例变量及操作的定义; (3)与其他类的关系,如继承关系等; (4)外部操作类的实例的操作界面。 3. 消息:对象之间在交互中所传送的通信信息。 4.封装:在面向对象方法中,对象的属性和方法的实现代码被封装在对象的内部,象具有的这种封装特性称为封装性。 5. 继承性:在已有类的基础上创建新的类,新类可以从一个或多个已有类中继承函数和数据,而且可以重新定义或加进新的数据和函数。 6. 多态性:类中具有相似功能的不同函数使用同一名称。 10.2 类与对象 类的定义: class 类名: 类的内部实现 class Cat: def describe (self): print (‘ This is a cat ‘ ) 10.2 类与对象 2. 对象的创建: 对象名=类名(参数列表) cat = Cat() #创建对象 cat. describe() #调用成员方法 10.3 属性与方法 实例属性 class cat: def __init__(self, s): this.name = s #定义实例属性 2. 类属性 class Cat: size = ‘ small ’ #定义类属性 def __init__( self, s ): self.name = s #定义实例属性 cat1 = Cat( ‘mi‘ ) cat2 = Cat( ‘mao’ ) print( cat1.name, Cat.size ) 3. 对象方法 类中定义的方法:私有方法、公有方法和静态方法 公有方法、私有方法和静态方法的定义和调用。 class Animal: specie = ‘cat’ def __init__(self): self.__name = ‘mao’ #定义和设置私有成员 self.__color = ‘black’ def __outPutName(self): #定义私有函数 print( self.__name ) def outPut(self): #定义共有函数 outPutName() #调用私有方法 outPutColor() @ staticmethod #定义静态方法 def getSpecie(): return Animal.specie #调用类属性 @ staticmethod def setSpecie(s): Animal.specie = s 10. 4 继承和多态 继承 class 父类名(object): 父类内部实现 class 子类名(父类名): 子类内部实现 2. 多重继承 Python支持多重继承,若父类中有相同的方法名,子类在调用过程中并没有指定父类,则子类从左向右按照一定的访问序列逐一访问父类函数,保证每个父类函数仅被调用一次。 3.多态:指不同对象对同一消息做出的不同反应,即“一个接口,不同实现” class A(object): def run(self): print(this is A) class B(A): def run(self): print(this is B) class C(A): def run(self): print(this is C) #主程序 b = B() b.run() c = C() c.run() 例:已知序列a,求解所有元素的和与所有元素的积。 class ListArr: def __init__(self): self.sum = 0 self.pro = 1 def add(self, l): for item in l: self.sum += item def product(self, l): for item in l: self.pro *= item a = [12,32,63,54

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档