面向对象编程的2个非常重要的概念:类和对象
对象是面向对象编程的核心,在使用对象的过程中,为了将具有共同特征和行为的一组对象抽象定义,提出了另外一个新的概念——类
- 类,就相当于制造飞机时的图纸,想象成模具
- 对象,就相当于创建的飞机,想象成通过模具制造出的物品
一、 相关概念
1. 类
人以类聚,物以群分。具有相似内部状态和运动规律的实体的集合(或统称为抽象
)。 具有相同属性和行为事物的统称
类是抽象的,在使用的时候通常会找到这个类的一个具体的存在,使用这个具体的存在。一个类可以找到多个对象
示例:
class Person: def __init__(self, name, age): self.name = name self.age = age # 遍历打印所有姓名-年龄 def print_info(self): print("姓名:", self.name, " 年龄:", self.age)
2. 对象
某一个具体事物的存在 ,在现实世界中可以是看得见摸得着的。可以是直接使用的
示例:
Person("王老师", 20) # 执行完之后返回值就是对象的引用
3. 类和对象之间的关系
现有类,再通过类创建对象
示图1
示图2:
4. 总结
类就是创建对象的模板,只有创建了类,才能够通过它创建出对象
二、练习
区分类和对象
- 奔驰汽车 类
- 奔驰smart 类
- 张三的那辆奔驰smart 对象
- 狗 类
- 大黄狗 类
- 李四家那只大黄狗 对象
- 水果 类
- 苹果 类
- 红苹果 类 红富士苹果 类
- 我嘴里吃了一半的苹果 对象
三、类的构成
1. 类(Class
) 由3个部分构成
- 类的
名称
:类名 - 类的
属性
:一组数据 - 类的
方法
:允许对进行操作的方法 (行为)
2. 举例
1)人类设计,只关心3样东西:
- 事物名称(类名):人(Person)
- 属性:身高(height)、年龄(age)
- 方法(行为/功能):跑(run)、打架(fight)
2)狗类的设计
- 类名:狗(Dog)
- 属性:品种 、毛色、性别、名字、 腿儿的数量
- 方法(行为/功能):叫 、跑、咬人、吃、摇尾巴