+ -
当前位置:首页 → 问答吧 → 类的属性有什么意义吗?

类的属性有什么意义吗?

时间:2011-06-21

来源:互联网

比如
class Test (object)
  test=10               # Class attributes:
def .... 初始化方法

  self.xx==
   zone=‘china’

============
上述里的test=10有什么意义吗在实际编程中?还有造函数里的zone='china',这个局部变量有何意义?

还有静态方法做什么用的?

作者: expert1   发布时间: 2011-06-21

类的属性 可以所有的实例共享。
初始化中zone=‘china’,只是相当于一个临时变量,并未与类或者实例绑定
静态方法和其他语言的静态方法一样,对于同一个方式表现出相同的特性
  1. >>> class Test(object):
  2.         test = 10
  3.         def __init__(self):
  4.                 zone = 'china'

  5.                
  6. >>> a = Test()
  7. >>> b = Test()
  8. >>> a.test
  9. 10
  10. >>> a.zone
  11. Traceback (most recent call last):
  12.   File "<pyshell#145>", line 1, in <module>
  13.     a.zone
  14. AttributeError: 'Test' object has no attribute 'zone'

  15. >>> Test.zone
  16. Traceback (most recent call last):
  17.   File "<pyshell#146>", line 1, in <module>
  18.     Test.zone
  19. AttributeError: type object 'Test' has no attribute 'zone'
  20. >>> Test.test
  21. 10
  22. >>> a.test = 'hayate'
  23. >>> a.test,b.test
  24. ('hayate', 10)
  25. >>>
复制代码

作者: ccporxy   发布时间: 2011-06-21