@为python中的装饰器
实例方法
实例方法时直接定义在类中的函数,不需要任何修饰。只能通过类的实例化对象来调用。不能通过类名来调用。
类方法
类方法,是类中使用@classmethod修饰的函数。类方法在定义的时候需要有表示类对象的参数(一般命名为cls,cls是一个类对象)。类方法可以通过实例化对象或者类名调用。
注意:在python中类名也是一个没有实例属性和实例方法的对象。这里所说的类对象是类本身,而非实例化对象。
类方法是属于整个类的方法。在类方法中不能调用实例对象和方法,可以调用类方法,类对象和静态方法。调用方法必须使用类对象调用。
静态方法
静态方法,是类中适用@staticmethod修饰的函数。静态方法中不需要参数,类方法可以通过实例化对象或类名访问。
静态方法属于整个类,只能调用静态属性和静态方法,不能调用非静态属性和方法(如果想调用,必须先new一个类对象)。非静态方法即能调用静态属性和方法,又能调用非静态属性和方法。
注意:在静态函数中调用是需要使用类名调用。类属性就是静态属性。