Python第八课面向对象编程课件.pptx

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

少儿编程课面向对象编程程序设计的发展过程先来了解下程序设计(编程语言)的发展过程非结构化程序设计结构化程序设计面向对象程序设计类和对象的基本概念想要理解面向对象,首先需要了解面向对象中最基本的两个概念:类与对象这是一个人吗?这是程序员吗?想要理解面向对象,首先需要了解面向对象中最基本的两个概念:类与对象这是一辆车吗?这是一只鸟吗?那么什么是类和对象呢?类:你心中对某一些“东西”的定义和分类:比如人(类)、车、鸟(类)、程序员对象:这些东西中的某个个体,比如乔布斯、楼下那辆车、窗体上那只鸟等,就称为对象思考一下:先有类还是先有对象呢?先来看现实世界中,是先有类的概念还是先有对象的概念也就是说,人不是从出生就知道总类的概念的,这是一个学习的过程判断从具体的鸟,到脑海中有清晰的鸟的形象的过程,就称为抽象抽象是从众多的事物中抽取出共同的、本质性的特征,而舍弃其非本质的特征。例如苹果、香蕉、生梨、葡萄、桃子等,它们共同的特性就是水果。得出水果概念的过程,就是一个抽象的过程。抽象于是我们可以得出结论:在现实世界中,先有对象,对象的共同特点被抽象成类的概念:抽象对象类而对于计算机中的面向对象的编程语言(如python)来说,则刚好相反需要先定义类,也即定义某一类东西的全部特征,然后使用这个类去创建一个个的个体(对象)Python中的面向对象接下来我们就来看看,Python中面向对象编程如何实现1首先定义一个类,Python中类的定义使用class关键字,后面跟类名classPerson():类的名称可以任意,采用驼峰命名法,也即每个单词的首字母大写,如Book、Person、WildAnimal等2接着,思考一下,类里面写什么内容呢?以人类为例,类既然起到模板的作用,那么就应该包含全人类的共同特征,具体来说包含两点:静态特征:属性类动态行为:函数/方法下面我们把类中属性的定义补充完整并定义一个对象出来:1在类中,加入__init__方法classPerson:def__init__(self,name,age):self.name=nameself.age=age这里的__init__方法是一个特殊的方法(init是单词初始化initialization的省略形式)在使用类创建对象之后被执行,用于给新创建的对象初始化属性用。下面我们把类中属性的定义补充完整并定义一个对象出来:2初始化属性的语句就是self.name=name这种了,这一句不太好理解,我们把它改编一下就好理解了:def__init__(self,n,a):self.name=nself.age=a首先这是一个方法,方法的形参有self,n和a三个。这个self,表示对象本身,谁调用,就表示谁(这句话不好理解,先记住,我们后面分析)。语法上,类中的方法的第一个参数都是self,这是和普通方法区别的地方。这里self.name=n和self.age=a表示将外部传来的n和a,赋值给了self对象的name和age属性。这里的n和a,其实叫什么都可以,但是会有个问题:一般我们调用方法的时候,想自动提示一下或者查看文档看一下这个方法的参数要求,如果形参名都是n、a、m、i这些,会让人摸不着头脑,不知道到底该传入什么样的实参。因为这里我们传入实参是为了给属性赋值,为了能见名知意,将形参的名字定义的跟属性一致,调用者就知道该怎么传参了。所以才有了上面的写法。下面我们把类中属性的定义补充完整并定义一个对象出来:3接着就可以创造一个对象出来了:p=Person(小明,20)这句话就创建出来了一个具体的人,并且给这个人起了个名字叫小明,指定了小明的年龄为20,并且将小明这个对象赋值给了变量p,此时p就表示小明这个人(对象)既然我们是编程世界的神,当然想造什么样的人都可以12比如造一个200岁的叫杰拉考的人:可以使用点.来调用对象的属性,比如输出p的名字和年龄classPerson:def__init__(self,name,age):self.name=nameself.age=agep=Person(杰拉考,200)print(p.name)print(p.age)p=Person(‘杰拉考,200)这句话后面的Person(杰拉考,200)用于创建出了一个对象(人),并且调用了__init__(self,name,age)方法完成了该人的属性的初始化,杰拉考赋值给了name,200赋值给了age属性。那self呢?self不需要传参,上面我们说过,self,表示对象本身,谁调用,就表示谁,此时的self就表示你Person(杰拉考,200)创造出来的那个对象,也即是p。也即,

文档评论(0)

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

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

1亿VIP精品文档

相关文档