什么时候应该在基类和受保护方法中使用静态方法? (可使用base.MethodName派生类中调用)什么时候应该在基类中声明静态方法?
0
A
回答
2
时,当你想只后代调用从基本方法的方法不依赖于
保护对象的静力状态,才应使用。
Base.Method一般覆盖方法
+1
对象的状态 - >特定时刻私有和公共字段/属性的值。 – 2011-02-10 05:53:22
1
保护和静态时使用的是不是排他性的。
保护意味着您允许派生类访问基本方法。
static表示方法不需要访问实例的状态。通常被称为类方法而不是实例方法。
base关键字仅在从基类中覆盖成员时才有用(然后基础成员通常被标记为虚拟)。这允许您在派生类中重载它时引用基本成员。
1
静态方法的一个好处是只有一个代码副本保留在内存中。如果你有很多方法的对象的大集合,这可能特别有用。换句话说,它可以减少你的内存占用。在多线程体系结构中对共享数据进行操作时,您可能会发现更容易或更直观的方式来控制受保护的代码块。但是,您可能会发现将对象的铸造(基类)实例转换为其基类静态方法之一时会在语法上令人不快,并且一些开发人员可能会对此编码风格感到困惑,因此评论此类代码总是一个好主意。
相关问题
- 1. 什么时候应该在PHP类中声明变量?
- 2. JAVA:什么时候该类应该是静态或动态的
- 3. 什么时候应该写静态方法?
- 4. 什么时候应该使用静态方法?
- 5. 什么时候应该使用公共静态方法
- 6. 什么时候我们应该去java中的静态类,变量和方法
- 7. 什么时候应该写在asp.net类的静态函数
- 8. 只有静态方法的辅助类声明应该是什么?
- 9. 在非静态类中声明一个静态方法的意义是什么?
- 10. 什么时候应该创建一个静态类?
- 11. 什么时候应该在一个类中使用静态方法,并且有什么好处?
- 12. createOperate方法不能被声明为静态;静态方法只能在静态或顶级类型中声明
- 13. 在Java中,如果一个方法使用静态成员,为什么它本身应该声明为静态?
- 14. 什么时候应该在Java类的源代码中的方法之后声明字段?
- 15. 什么时候应该使用使用声明?
- 16. 为什么我们要在普通类中声明静态类?
- 17. Python:什么时候应该使用子类而不是方法?
- 18. 谁和什么时候应该调用基于AbstractAccountAuthenticator的类的方法confirmCredentials?
- 19. 什么时候应该在java中的INTERFACE中声明一个CLASS?
- 20. RestTemplate应该静态全局声明?
- 21. 什么时候使用C#中的'静态方法'
- 22. 导入DLL时为什么要声明静态方法和Extern方法?
- 23. 声明在静态类
- 24. 什么时候应该在Silverlight中调用Focus方法
- 25. 我什么时候应该重写等方法在Java中
- 26. 什么时候你会声明Java中的静态数据结构?
- 27. 为什么不能在类中声明const静态字符串
- 28. 我的退货声明和静态方法有什么问题
- 29. 什么是声明静态可变值的正确方法
- 30. 为什么我们要声明一个静态方法
你的意思是“**声明**静态方法”(如在你的问题标题中)或“**使用**静态方法”(如你的问题的主体)? – 2011-02-11 19:25:23