目录
1. 面向对象技术简介
- 类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。
- 方法:类中定义的函数。
- 类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。
- 数据成员:类变量或者实例变量用于处理类及其实例对象的相关的数据。
- 方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。
- 局部变量:定义在方法中的变量,只作用于当前实例的类。
- 实例变量:在类的声明中,属性是用变量来表示的,这种变量就称为实例变量,实例变量就是一个用 self 修饰的变量。
- 继承:即一个派生类(derived class)继承基类(base class)的字段和方法。继承也允许把一个派生类的对象作为一个基类对象对待。例如,有这样一个设计:一个Dog类型的对象派生自Animal类,这是模拟"是一个(is-a)"关系(例图,Dog是一个Animal)。
- 实例化:创建一个类的实例,类的具体对象。
- 对象:通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法。
2. 什么是类
1、 类把数据与功能绑定在一起。
2、创建新类就是创建新的对象 类型,从而创建该类型的新 实例 。
3、类实例具有多种保持自身状态的属性。(属性:一般是名词,eg: name, age, gender.....)
4、类实例还支持(在类中定义的)改变自身状态的方法。(方法: 一般情况是动词, eg: create, delete, eating, run......)
5、类定义关键字:class
3. 什么是对象
3-1. 类对象
1、类对象支持两种操作:属性引用和实例化。(示例中的 Cat 就是类对象,通俗称为类)
2、属性引用:使用 Python 中所有属性引用所使用的标准语法: obj.name
。
3、实例化:类的 实例化 使用函数表示法。
eg:
fentiao = Cat()
创建类( cat )的新 实例 并将此对象分配给局部变量 fentiao 。
3-2. 实例对象
1、类实例化后的对象。(示例中的 fentiao 是实例对象)
2、唯一操作是属性引用。(引用 类中的 属性 和 方法)
4. 示例(类定义和实例化)
# 类(Class)
class Cat:
# 属性:一般是名词,eg: name, age, gender.....
name = 'name'
kind = 'kind'
# 方法: 一般情况是动词, eg: create, delete, eating, run......
def eat (self):
print('cat like eating fish.....')
# 对象(Object):对类的实例化(具体化)
fentiao = Cat()
print(Cat) # <class '__main__.Cat'>
print(fentiao) # <__main__.Cat object at 0x00E9FD70>