- 1、本文档共42页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第七章面向对象编程
7.5继承7.4封装7.2属性和方法7.6多态7.3构造方法和析构方法7.1类和对象7.7案例实战
7.1类和对象
7.1类和对象面向对象编程(OOP)是一种编程方式,此编程方式的需要使用“类”和“对象”来实现,所以,面向对象编程实质就是对“类”和“对象”的使用。类:就是一个模板,模板里可以包含多个方法和属性。对象:根据模板创建的实例,通过实例对象可以执行类中的方法。
7.1类和对象7.1.1类的定义类由三部分组成:类名:类的名称,它的首字母一般大写。属性:用于描述类的特征,也称为数据成员。例如:人有姓名、年龄等。方法:用于描述类的行为,也称为方法成员。例如:人具有运动、说话等行为。类的定义语法如下:class?类名():? 类的属性 类的方法
7.1类和对象7.1.2创建对象创建好了类之后,就可以创建实例对象了。创建对象的语法格式如下:对象名=类名()Python中可以动态为类和对象添加成员,这一点和很多面向对象程序设计语言不同。要想给对象添加属性,可以通过如下方式:对象名.新的属性名=值
7.1类和对象classPerson(): #定义类 defeat(self): #定义方法 print(吃肉夹馍...真香呀...) defrun(self): print(8百米体测达标...呼哧...)person=Person() #定义对象,并用person变量保存它的引用person.name=张三 #添加表示姓名的属性person.age=18 #添加表示年龄的属性person.eat() #调用方法person.run()print(person.name,person.age) #打印属性值
7.1类和对象7.1.3self参数类的所有实例方法都必须至少有一个名为self的参数,并且必须是方法的第一个形参(如果有多个形参)。self参数表示对象本身。在类的实例方法中访问实例属性时需要以self为前缀,但在方法外通过对象名调用对象方法时并不需要传递这个参数。如果在外部通过类名调用对象方法则需要显式为self参数传递值。
7.2属性和方法
7.2属性和方法7.2.1属性属性分为两种:类属性和实例属性。类属性是在类中所有方法之外定义的数据成员;实例属性一般是指在构造函数__init__()中定义的,定义和使用时必须以self作为前缀;在类的外部,实例属性属于实例对象,只能通过对象名访问;而类属性属于类,可以通过类名或者对象名访问。类属性被所有类的实例对象(实例方法)所共有,在内存中只存在一个副本。
7.2属性和方法默认情况下,Python中的成员函数和成员变量都是公开的(public),在Python中没有类似public,private等关键词来修饰方法成员和数据成员。在Python中定义私有成员只需要在属性名或方法名前加上?“__”双下划线,那么这个属性或方法就是私有的了。私有属性在类外不能直接访问,需要通过调用对象的公有方法来访问,或者通过Python支持的特殊方式来访问,可以对象名.类名__xxx方式来访问私有的类属性。
7.2属性和方法classPerson(): name=Tom #公有的类属性 __age=12 #私有的类属性p=Person() print(p.name) #通过对象访问公有类属性Tomprint(Person.name)#通过类访问公有类属性Tom print(p.__age)#错误,不能在类外通过实例对象访问私有的类属性Traceback(mostrecentcalllast):AttributeError:Personobjecthasnoattribute__ageprint(p._Person__age) #访问类的私有属性,一般不推荐12
7.2属性和方法7.2.2方法Python类的方法分为实例方法,类方法和静态方法。实例方法第一个参数必须是实例对象,该参数名一般约定为“self”,通过它来传递实例的属性和方法(也可以传递类的属性和方法);只能由实例对象调用。类方法使用装饰器@classmethod来修饰一个方法,此时该方法就是类方法。类方法的第一个参数必须是当前类对象,该参数名一般约定为“cls”,通过它来传递类的属性和方法(不能传实例的属性和方法);实例对象和类对象都可以调用。
7.2属性和方法静态方法使用装饰器@staticmethod来修饰一
您可能关注的文档
- 《Python大数据基础与实战》课件_Python大数据基础与实战(第8章 异常处理).pptx
- 《PLC应用技术》课件_10.项目十 多路口交通信号灯控制.pptx
- 《PLC应用技术》课件_2.项目二 博途软件的使用.pptx
- 《电子商务物流基础与实训》课件_第三章 网络采购.pptx
- 《高等数学 》课件_第7章.ppt
- 《PLC应用技术》课件_8.项目八 运料小车小车往返教程.pptx
- 《Xilinx FPGA设计与实践教程》课件_第7章.ppt
- 《高等数学 》课件_第6章.ppt
- 《Xilinx FPGA设计与实践教程》课件_第14章.ppt
- 《电子信息类专业英语》课件_第11章.pptx
文档评论(0)