面向对象程序设计
(1)对象(Object):面向对象程序设计思想可以将一组数据和与这组数据有关操作组装在一起,形成一个实体,这个实体就是对象。
(2)类(class):具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象。例如,如果人类是一个类,则一个具体的人就是一个对象。
(3)封装:将数据和操作捆绑在一起,定义一个新类的过程就是封装。
(4)继承:类之间的关系,在这种关系中,一个类共享了一个或多个其他类定义的结构和行为。继承描述了类之间的关系。子类可以对基类的行为进行扩展、覆盖、重定义。如果人类是一个类,则可以定义一个子类“男人”。“男人”可以继承人类的属性(例如姓名、身高、年龄等)和方法(即动作。例如,吃饭和走路),在子类中就无需重复定义了。从同一个类中继承得到的子类也具有多态性,即相同的函数名在不同子类中有不同的实现。就如同子女会从父母那里继承到人类共有的特性,而子女也具有自己的特性。
(5)方法:也称为成员函数,是指对象上的操作,作为类声明的一部分来定义。方法定义了可以对一个对象可以执行的操作。
(6)构造函数:一种成员函数,来在创建对象时初始化对象。构造函数一般与它所属的类完全同名。
声明类
在Python中,可以使用class关键字来声明一个类,其基本语法如下:
class 类名:
成员变量
成员函数
同样,Python使用缩进标识类的定义代码。
self
可以看到,在成员函数SayHello()中有一个参数self。这也是类的成员函数(方法)与普通函数的主要区别。类的成员函数必须有一个参数self,而且位于参数列表的开头。self就代表类的实例(对象)自身,可以使用self引用类的属性和成员函数。在后面部分还会结合实际应用介绍self的使用方法。
定义类的对象
对象是类的实例。如果人类是一个类的话,那么某个具体的人就是一个对象。只有定义了具体的对象,才能使用类。Python创建对象的方法如下:
对象名=类名()
口例如,下面的代码定义了一个类Person的对象p:
p= Person()