python中的类和对象
面向对象编程的2个非常重要的概念:类和对象
对象是面向对象编程的核心,在使用对象的过程中,为了将具有共同特征和行为的一组对象抽象定义,提出了另外一个新的概念——类
类就相当于制造飞机时的图纸,用它来进行创建的飞机就相当于对象
类
类是抽象的,在使用的时候通常会找到这个类的一个具体的存在,使用这个具体的存在。一个类可以找到多个对象
对象
某一个具体事物的存在 ,在现实世界中可以是看得见摸得着的。
可以是直接使用的
# 类和对象之间的关系:类就是创建对象的模板
类的构成
类(Class) 由3个部分构成
类的名称:类名
类的属性:一组数据
类的方法:允许对进行操作的方法 (行为)
例:
人类设计,只关心3样东西:
* 事物名称(类名):人(Person)
* 属性:身高(height)、年龄(age)
* 方法(行为/功能):跑(run)、打架(fight)
狗类的设计
* 类名:狗(Dog)
* 属性:品种 、毛色、性别、名字、 腿儿的数量
* 方法(行为/功能):叫 、跑、咬人、吃、摇尾巴
类的抽象
如何把日常生活中的事物抽象成程序中的类?
拥有相同(或者类似)属性和行为的对象都可以抽像出一个类
方法:一般名词都是类(名词提炼法)
定义类
定义一个类,格式如下:
class 类名:
方法列表
demo:定义一个Car类
# 定义类
class Car:
# 方法
def getCarInfo(self):
print(‘车轮子个数:%d, 颜色%s’%(self.wheelNum, self.color))
def move(self):
print(“车正在移动…”)
说明:
* 定义类时有2种:新式类和经典类,上面的Car为经典类,如果是Car(object)则为新式类
* 类名 的命名规则按照”大驼峰”
创建对象
创建对象的格式为:
对象名 = 类名()
创建对象demo:
对象是有属性和方法组成的,在实际环境中也就是对象本身的变量和函数!比如一条鱼,眼睛和尾巴就是属性(变量),会游泳就是他的技能(方法、函数)!
在python中,可以使用内置方法isinstance()来测试一个对象是否为某一个类的实例