静态成员变量只能通过类名.变量名获得,实例成员变量,通过该实例引用.变量名获得。
在实例对静态成员变量赋值时,实例
python是动态类型的语言,没有特别的标志区分静态成员变量和普通成员变量
如果你使用类名.成员变量 那这个成员变量现在就是静态成员变量(类变量)
如果你使用实例.成员变量 那这个成员变量现在就是普通成员变量(实例变量)
实例变量的值是什么时候初始化的,实例变量并不是构造对象的时候初始化的,而是在第一次通过对象调用该实例变量的
时候,从类变量此时的值拷贝过来的,此后便互不影响。
静态方法、类方法、实例方法
实例方法,类中的普通方法,由实例调用
类方法,被@classmethod装饰的方法,类对象和实例都可以调用类方法
静态方法,被@staticmethod装饰的方法,类对象和实例都可以调用静态方法,静态方法不会对任何实例造成影响
实例方法和类方法的区别是,实例方法的第一个参数是self(实例本身),类方法的第一个参数是cls(类对象本省)
注意:这里的类对象和实例对象的意思是 type(类名)---classobj
type(实例名)-instance
个人感觉静态的概念在python中真的没多大用 ,因为这是个动态语言。