一、什么是类
1、类(class)是对象的模板,封装了对应现实实体的性质和行为。
2、实例对象(Instance Objects)是类的具体化,把类比作模具,对象则是用模具制造出来的零件。
3、类的出现,为面向对象编程的三个最重要的特性提供了实现的手段,三个特性即是(封装性、继承性、多态性)封装性就是说类可以把一些数据一些属性以及方法行为一些代码封装在一起,这样代码就不会到处散落而是被集中在一起,继承性体现在特殊类和普通类,比如说人类是一个大的类的概念,然后在人类分成各个不同的人种,每一个人种是一个更小的类,哪个每一个人种就可以继承人类的一些公共的属性同时又有一些自己的特殊属性这个就叫继承。多态性体现在在面向对象的编程时同一类型的代码或者同一段代码,可以处理不同的对象,甚至可以处理不同类型的对象,所以多态性为代码的重用带来很大的优势
4、类和函数相似,是一系列代码的封装。python中约定,类名用大写字母开头,函数用小写字母开头,以便区分
二、定义类
2.1、定义类用class语句基本语法如下图所示:
class <类名>:
<一系列方法的调用>
2.2、类的初始化基本语法如下图:
class <类名>:
def _init_(self,<参数表>): #python中类的初始化方法init左右两边各加上一个下划线
def <方法名>(self,<参数表>):#除了初始化方法以外还可以定义其他的方法,这里的其他方法名可以任意起但都是用def定义
_init_()是一个特殊的函数名,用于根据类的定义创建实例对象,第一个参数必须为self
三、调用类
3.1、调用类的基本语法如下图:
<类名>(<参数>)
调用类会创建一个对象,(注意括号)
obj = <类名>(<参数表>) #调用函数可能会返回一个数据对象,调用类就会返回一个对象的实例,然后把这个对象的实例赋值给一个变量,后面这个变量就直接指向这个对象实例
类方法中的self指这个对象实例
3.2、使用点(.)操作符来调用对象里的方法举个例子如下图:
t = turtle.Pen() #调用海龟作图里面turtle模块下边的Pen这个类然后括号,括号中没有参数,说明Pen这个类不需要一个初始化参数生成一只海龟,然后赋值给变量t,变量t就指向了对象实例
t.forward(100)#调用对象(海龟)中的方法forward,100是方法的参数
3.3、类的定义与调用完整实例如下图所示:
class Force: #创建一个类
def _init_(self,x,y):#类的初始化,x,y为方向分量
self.fx,self.fy = x,y #self.fx,self.fy都是对象实例属性分别记录下x,y,经过初始化之后生成f1这个对象
def show(self): #打印出力的值
print("Force<%s,%s>" % (self.fx,self.fy))
def add(self,force2):#与另一个合成
x = self.fx + force2.fx
y = self.fy + force2.fy
return Force(x,y)
#生成一个力对象
f1 = Force(0,1)
f1.show() #调用f1对象打印出力的值,show里面的参数self就是对象自己而f1也是对象自己所以就不要参数调用了
#生成另一个力对象
f2 = Force(3,4)
#合成为新的力
f3 = f1.add(f2) #将两个力合成赋值为f3生成一个新的对象
f3.show() #调用对象打印出力的值
输出
F:\j\venv\Scripts\python.exe F:/j/demo25.py
Force<0,1>
Force<3,5>
Process finished with exit code 0
网友评论