【面试必问】python实例方法、类方法@classmethod、静态方法@staticmethod和属性方法@property区别

【面试必问】python实例方法、类方法@classmethod、静态方法@staticmethod和属性方法@property区别

1、#类方法@classmethod,只能访问类变量,不能访问实例变量,通过cls参数传递当前类对象,不需要实例化,直接【类名.方法名()】,可通过类对象和类对象实例访问

2、#静态方法@staticmethod,名义归类管,实际跟类没关系,跟类关联截断了,是类下单独的函数,可以不传递任何参数,不需要实例化,直接【类名.方法名(),可通过类对象和类对象实例访问

3、#实例方法,一般类下未带修饰符@是实例方法,需要实例化后调用

4、#属性方法@property,将类方法变为属性,并赋值

待续~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

猜你喜欢

转载自www.cnblogs.com/chengzi521/p/9638059.html