一、高级编程语言:(C/C++,java,python,php,ruby) 面向过程 面向对象 机器语言:面向硬件 什么是面向对象编程? 二、什么是对象和类? 类:是一个抽象的概念--女朋友,骑手 对象:是一个具体实物---小张,胡平 对象:特性--属性 操作---方法(函数) 类是把具有相同的属性和方法的对象进行抽象 类和对象的关系? 类是对象的抽象 对象是类的实例 通过python如何实现类和对象的定义? 类:属性和方法 对象:给具体的属性值以及对方法进行使用 对象---实例 实例化:把对象给造出来 先定义类 才能有对象 三、属性: 类属性: 类属性定义在类当中,类属性没有前缀 类属性可以被类名直接调用,也可以被对象(实例)直接调用 类属性不能直接在实例方法中使用,如果要使用,需要通过:类名.类属性 实例属性: 实例属性定义在实例方法中,实例属性一定会有self. 实例属性可以实例(对象)进行调用,不能被类名进行调用 如果类属性和实例属性名字相同,则实例使用的实例属性,类名使用的是类属性 私有属性: 变量名前加两个—,不能在类的外部进行使用,只能在类的内部使用 内置属性: Python 中系统自定义的,直接进行使用就可以了 内置属性的特点:名字的前后都有两个 ’_’ 下划线 四、方法(函数): 1、类方法 定义:在定义的时候需要加一个装饰器@classmethod,必须要有参数cls 作用:类方法是用来对类属性的值进行修改的 调用:类方法可以直接被类名进行调用,也可以被对象调用 2、实例方法 定义:在定义的时候必须要有参数self,而且要放在第一位 作用:实现对象要有的各种功能 调用:只能被对象引用,不能被类进行引用 3、内置方法 定义:由系统已经定义完成,由系统自动调用执行; 可以被重新定义 作用:不同的函数作用不相同 调用:由系统自动调用执行 构造方法: 定义:__init__(),如果用户不自己定义构造方法,那么由系统提供一个不带参数的空的构造方法,如果定义了,就执行用户定义的构造方法 如果对象属性的初始值都不相同的话,就需要定义有参构造; 作用:构造方法是负责对象成员的初始化工作,为实例变量(对象属性)赋予合适的初始化值。 调用:当创建了这个类的实例时就会调用该方法。有且只调用一次; 4、私有方法 定义:在方法名前面加上两个下划线’_’,也是只能在类内部被调用 5、静态方法 定义:需要通过修饰器“@staticmethod”来进行修饰 作用:实现函数功能 调用:静态方法中没有self或者cls这样的参数,类和实例都能调用。
|