实验七 面向对象程序设计
一、实验目的与要求
1、了解面向对象编程思想,掌握类和对象的定义和使用。
2、熟悉self的使用技巧,掌握构造方法的使用。
3、了解如何使用封装保护属性,掌握单继承和多继承的使用。
4、掌握类属性和实例属性的使用,熟悉类方法和静态方法的使用技巧。
二、实验原理
在程序中使用对象来映射现实中的事物,使用对象间的关系来描述事物之间的联系,这种思想就是面向对象。面向对象编程有两个非常重要的概念:类和对象。对象是面向对象编程的核心。具有相似特征和行为的事物的集合统称为类,对象是根据类创建的,一个类可以对应多个对象。类是由3部分组成的:(1)类的名称:类名,首字母必须大写,比如Person;(2)类的属性:一组数据,比如性别;(3)类的方法:允许进行操作的方法,比如说话。使用class关键字来声明一个类,基本格式如下:
class 类名:
类的属性
类的方法
根据类创建对象的语法格式如下:
对象名 = 类名()
要想给对象添加属性,可以通过如下方式:
对象名.新的属性名 = 值
构造方法指的是__init__方法。当创建类的实例的时候,系统会自动调用构造方法,从而实现对类进行初始化的操作。当删除一个对象来释放类所占用资源的时候,Python解释器默认会调用另外一个方法,这个方法就是__del__( )方法。__del__方法被称为析构方法。
在方法的列表中,第1个参数永远都是self。self的字面意思是自己,我们可以把它当做C++里面的this指针理解,表示的是对象自身。当某个对象调用方法的时候,Python解释器会把这个对象作为第1个参数传给self,开发者只需要传递后面的参数就可以了。
运算符重载是通过实现特定的方法使类的实例对象支持Python的各种内置操作。例如:+运算符是类里提供的__add__这个函数,当调用+实现加法运算的时候,实际上是调用了__add__方法。加法运算是通过调用__add__方法完成重载的,当两个实例对象执行加法运算时,自动调用__add__方法。跟索引相关的重载方法包括如下3