类方法有额外的隐式的类变量cls传入,从而可以用cls做一些相关的处理。并且有子类继承时,调用该类方法时,传入的类变量cls是子类,而非父类。
class A(object):
    @classmethod
    def cm(cls):
        print '类方法cm(cls)调用者:', cls.__name__
    @staticmethod
    def sm():
        print '静态方法sm()被调用'
class B(A):
    pass
A.cm()
B.cm()
A.sm()
B.sm()
输出:
类方法cm(cls)调用者: A
类方法cm(cls)调用者: B
静态方法sm()被调用
静态方法sm()被调用