- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果一个类实现了单例模式,是否应该将所有变量声明为静态?
有什么理由不应该将它们声明为静态吗?有什么区别吗?
最佳答案
没有。单例模式只是意味着单个实例是唯一的实例 - 它并不意味着“使所有内容都可以静态访问”。
单例模式为您提供“单实例”的所有好处,而不会牺牲测试和重构代码的能力。
编辑:
我想要指出的一点是,功能的使用方式(取决于上下文)和功能的初始化方式之间存在差异。
在大多数情况下,您的对象只有一个实例(例如,在最终的生产系统中)可能是合适的。但如果你强制它成为唯一的选择,那么在其他情况下(例如测试)也会变得更加困难。
此外,使某些内容静态化比“只有一个类的实例应该可访问”具有更重要的含义——这通常是目的。
此外,在我开发的软件中,对象的初始化和生命周期通常由其他人控制(我在这里谈论 DI)——并且使某些东西静态化在这里确实没有帮助。
关于java单例模式,所有变量都应该是类变量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1767601/
我最近购买了《C 编程语言》并尝试了 Ex 1-8这是代码 #include #include #include /* * */ int main() { int nl,nt,nb;
早上好!我有一个变量“var”,可能为 0。我检查该变量是否为空,如果不是,我将该变量保存在 php session 中,然后调用另一个页面。在这个新页面中,我检查我创建的 session 是否为空,
我正在努力完成 Learn Python the Hard Way ex.25,但我无法理解某些事情。这是脚本: def break_words(stuff): """this functio
我是一名优秀的程序员,十分优秀!