使用Class属性和方法,为了在类中引用它们,我们应该使用Classname。或自我。类属性和方法
Q
类属性和方法
0
A
回答
0
我认为这两种方式都有效,但与Java相比它有点奇怪。
0
self.attr
引用实例的属性,如果没有在实例上定义的指定名称的属性,则将返回。通常这是合理的行为。如果您特别想获取课程的属性,请使用self.__class__.attr
。
这是罕见的,任何人都将覆盖上一个实例的方法,这需要特殊的“实例方法”对象的构造,所以self.method()
一般是正确的(使用@classmethod
或@staticmethod
甚至方法声明)。
相关问题
- 1. 方法和属性
- 2. Python - 类的属性,方法和参数
- 3. 类方法曝光和属性定义
- 4. 类在AngularJS - 属性和方法
- 5. 从接口方法和类方法获取属性
- 6. 检查方法是否是类方法和调用属性
- 7. C#方法和属性
- 8. Html.DisplayFor和属性的方法
- 9. 类和属性的属性
- 10. 如何划分MVVM中的属性类和方法类
- 11. 抽象类继承另一个类的方法和属性
- 12. 子类是否具有父类的所有属性和方法?
- 13. 以编程方式获取类方法和属性?
- 14. 属性和类
- 15. NSObject无法访问属性和方法
- 16. 只读属性,方法和点语法
- 17. Moq和虚拟属性和方法
- 18. 从方法分配到类属性rails
- 19. 的NSMutableDictionary类属性不是方法
- 20. Python类:添加动态属性,方法
- 21. PHP类属性/方法同步
- 22. IllegalArgumentException类:...,getter方法的属性:ID
- 23. 获取类方法中属性的值
- 24. 忽略保留属性,类方法
- 25. 使用方法初始化类属性
- 26. 从类方法的Matlab设置属性
- 27. 它的方法改变类属性
- 28. 从类中调用方法属性?
- 29. 属性错误使用类方法
- 30. 访问类方法中的属性?
我问这个问题是因为jython unittest库不像JUnit或TestNG,JUnit或TestNG的静态断言方法是在不引用测试类的情况下导入和使用的。在jython unittest中,如果继承unittest.Testcase,则可以调用不带self关键字的assert方法作为参数(self.assertEquals(t_date.year,year))。如果使用unittest.TestCase中的assert方法,则必须包含self关键字作为参数unittest.TestCase.assertEquals(self,t_date.year,year)。你不认为它很奇怪。 – 2013-03-01 04:11:28