class ABase(object): @classmethod #类方法修饰符 def aclassmet(cls): print'a class method for', cls.__name__ class ADeriv(ABase): pass bInstance = ABase( ) dInstance = ADeriv( ) ABase.aclassmet( ) # prints: a class method for ABase bInstance.aclassmet( ) # prints: a class method for ABase ADeriv.aclassmet( ) # prints: a class method for ADeriv dInstance.aclassmet( ) # prints: a class method for ADeriv
也就是说,类方法并不是必须的,使用普通函数也可以实现类方法的功能。
4.类的继承
在python中,继承一个类,就像这样:
class A(object) #继承object类
#.......
class B(A) #继承A类
#........
另外,python中支持多继承,对于多继承,找某个对应的函数,其python有相应的方法,如:
class D(oject): pass#D继承自object class B(D): #B是D的子类 varB =42 def method1(self): print"Class B : method1" class C(D): #C也是D的子类 varC =37 def method1(self): print"Class C : method1" def method2(self): print"Class C : method2" class A(B,C): #A是B和C的子类 varA =3.3 def method3(self): print"Class A : method3"