类,也即面向对象。
简单地说,可以把它理解为“物以类聚”,即有相同的功能特性,也就是共性。如果说某个个体属于某个类,那他一定有这个类的共性。比如说人,只要是人这个类都应该有奔跑、蹦跳、说话唱歌、制造生产工具等能力。
“类”好似图纸、模具,另一方面又可以理解为是功能(函数)的组合。
比如汽车是一个类,汽车模具开发出来后,可以按照模具生产很多汽车,当然生产出来的汽车每一台都不可能一模一样,所以每台汽车都有编号,这就是他的唯一身份标识——实例。
再从功能组合来理解,比如人有这样几个功能:奔跑、蹦跳、说话唱歌、制造生产工具等等。把人作为一个类,这些功能都能满足,但鱼不满足,因为鱼不足满这里面某些功能,所以不属于人这个类。当然人这个类里每个人都有自己的特征,个体互不相同,所以我们人是有特殊编号——身份证,这就是每个人都是一个实例。
类怎么创建呢?
既然类就是功能(函数)的组合,那么其实它就是一些函数(实现功能的方法,所以类中的功能实现也称为方法)的组合。所以创建类就是对功能函数组合在一起进行封装。
在类中有一些固定的参数,称为属性;类内的函数称为方法。比如人这个类,有一张嘴、两只眼睛、两条腿、两只手等,这些都是固有的,称之为属性。但是人这个类中每个个体实例还有不同部分,如身高、体重,这些就属于个体(实例)特有的。
创建类的方法跟自定义函数类似,但有区别,具体如下:
1、类的名称首字母要大写;
2、创建类要用class引出;
3、类中的功能函数都需要有一个self参数;
4、参数传进类内需要用self.来接收,接收参数a的值为self.a=a;
5、类中的属性和参数在引用时候要在其前面加self. ;
类的参数传入,属性的调用,以及方法中的参数传入实例如下。
下面的类名为Person,里面有两个属性x和y,x是一个数组,y是字符串。Person还有4个方法(子函数),具体的说明见代码后。
>>>
class Person:
"""
这是一个类,距举例说明了如何传入参数和创建各种功能。
"""
x = (1,2,2)
y = "这是一个关于类的属性和方法的应用案例,类名为Person。"
def__init__(self, name):
self.name = name
defprint(self): #每个方法(子函数)都必须要有self参数
'''
#打印Person类的说明和固有属性
'''
print(self.y)
print("人有%d张嘴,%d只眼睛,%d只手。"%(self.x[0],self.x[1],self.x[2]))
def nam(self):
"""
输出实例的姓名
"""
print("姓名:", self.name)
def tall(self,a):
"""
接收实例的身高参数,并打印输出
"""
self.a = a
print("这是%s身高(Cm):"%self.name,self.a)
>>> yubg = Person("余本国")
先实例化一个个体。
>>> yubg.print()
这是一个关于类的属性和方法的应用案例,类名为Person。
人有1张嘴,2只眼睛,2只手。
>>> yubg.nam()
姓名: 余本国
>>> yubg.tall(169)
这是余本国身高(Cm): 169
说明: def __init__(self, a) 和 def b(self, x) 都是传入参数,但前一个传入的参数在实例化的时候就需要传入参数,后一个传入参数方法是在调用该方法时才传入参数。
还可以输入200个字
蝈蝈派【海南省教改项目(Hnjg2022-80)支持】 网站版权所有
Python remained the copyright of our website