Python学习-11.Python中的类定义
Python是一门面向对象语言,那么作为面向对象的特征——类也是有的。值得注意的是Python中一切皆对象,并不像C#中为了性能考虑,int这些在Python中也是对象。(C#中int是结构体)
如何定义一个类:
1 class Person: 2 pass
使用class关键字,上面定义了一个Person类。但是现在这个类是空白的。
接下来定义一个构造函数
1 class Person: 2 def __init__(self,name,age): 3 self.name=name 4 self.age=age
函数__init__是Python中类的构造函数的名称,任何Python的类的构造函数的名称都必须是这样。
在__init__构造函数中,第一个参数self指代该实例。这一点很好理解,因为构造函数也是一个实例函数。在Python中,定义实例函数需要在函数的第一个参数中填入self这个参数。
接下来定义一个实例函数和静态函数。
1 class Person: 2 def __init__(self,name,age): 3 self.name=name 4 self.age=age 5 6 def printName(self): 7 print(self.name) 8 9 def staticPrint(): 10 print('this class\'s name is Person')
接下来就是新建一个类的实例并调用了。
1 instance=Person('Tom',18) 2 instance.printName() 3 Person.staticPrint()
其中第一行调用Person的构造函数并将实例赋值给instance变量。值得注意的是Python中并没有new关键字。
第二行则调用了printName的实例方法。输出Tom。
第三行则调用了Person类的staticPrint静态方法,输出this class's name is Person。