![]() |
1
51
从 Static Classes and Static Class Members (C# Programming Guide)
|
![]() |
2
24
除了astander所说的之外,您的问题还暗示了对实例方法的误解。不管函数是否是静态的,只有 一 内存中函数代码的副本。必须通过对象调用非静态方法,但该对象不携带该方法的私有副本。因此,静态方法和非静态方法的内存使用实际上是相同的,而且正如其他人指出的那样,性能特征几乎相同。 非静态 成员变量 但是,对于您创建的每个对象,确实是单独存在的。但是,担心内存使用几乎总是浪费时间,除非您的程序中确实存在与内存相关的问题。 |
![]() |
3
18
这个话题有点离题,但也同样重要。 制作方法的选择 静止的 或 实例 不应该基于执行时间(这似乎无关紧要)。它应该基于方法是否在对象上操作。例如,所有math.*方法都是静态的,而(大多数)string.*方法是实例,因为它们操作的是string实例。我的个人哲学: 一个好的设计应该能弥补其他地方可能节省下来的几个周期 。 关于这个问题的另一种观点是:我最近和一个人一起工作,他被告知静态方法是邪恶的,因为它们把我们带回到了程序编程的黑暗时代,因此应该不惜一切代价避免。这导致了一些奇怪的类实例,这些类需要实例来访问对对象内部毫无兴趣的方法。 嘿,从我的壁炉里拿出来感觉真好。 |
![]() |
4
1
好的答案-基本上没有关系,这是几乎所有这类问题的答案。即使它确实起到了作用——如果程序的执行时间花费了1美元,这种问题也可能只花费1美分,而且 很有可能 还有其他事情 costing a great deal more 。 |
![]() |
5
0
MeasureIt 可以肯定的是,除非你正在创建一个覆盖全球的超高容量事务处理超级计算集群,否则它不会有明显的区别。 |
![]() |
J. Doe · 线程静态变量与实例化 7 年前 |
![]() |
D.B · django静态文件不随虚拟环境出现 7 年前 |
![]() |
157 239n · 我可以在UI线程之外使用getFilesDir吗 7 年前 |
![]() |
John David · ——等待这个。方法();在静态方法中不起作用 7 年前 |
![]() |
Yu.Pan · Spring boot项目找不到静态文件 7 年前 |
![]() |
Yu.Pan · 无法在springboot静态内容中获取文件 7 年前 |
![]() |
BaCh · C++:使用名称相同但参数不同的类成员和静态函数失败 7 年前 |