问题标签 [static-methods]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 静态方法或单例性能方面(Android)?
在具有少量 POJO 和许多对其进行操作的辅助方法的应用程序中,在性能方面更好的是:使辅助类成为单例还是使方法静态?
java - 静态变量和方法
我遇到了一个这样设置的类:
我对静态方法的理解是,除非它们是常量并且不会更改,否则不应在其中使用类变量。相反,您应该使用参数。我的问题是为什么通过执行 MyClass.doSomething() 多次调用时这不会中断。在我看来,它不应该起作用,但确实起作用。它只会通过 if 语句一次。
那么有人可以向我解释为什么这不会中断吗?
java - 使用私有静态方法
您如何看待使用私有静态方法?
就个人而言,我更喜欢使用静态私有方法而不是非静态方法,只要它不需要访问任何实例字段。
但我听说这种做法违反了 OOP 原则。
编辑:我想从风格的角度来看,而不是性能。
c# - 泛型类的静态方法?
好的,情况就是这样:
我有一个通用的基类,我需要用一些静态值来初始化它。这些值与我的泛型基类加载的类型无关。
我希望能够做这样的事情:
同时还有这样的课程:
有没有办法做到这一点?我可以创建一个非泛型基类并将静态方法放在那里,但我不喜欢那个“hack”:)
python - Python中的静态方法?
是否可以在 Python 中有静态方法,我可以在不初始化类的情况下调用这些方法,例如:
language-agnostic - 使用大量静态方法是一件坏事吗?
当该类不需要跟踪内部状态时,我倾向于将类中的所有方法声明为静态。例如,如果我需要将 A 转换为 B 并且不依赖于可能会发生变化的某些内部状态 C,我会创建一个静态转换。如果有一个我希望能够调整的内部状态 C,那么我添加一个构造函数来设置 C 并且不使用静态转换。
我阅读了各种关于不要过度使用静态方法的建议(包括关于 StackOverflow 的建议),但我仍然无法理解上面的经验法则有什么问题。
这是一个合理的方法吗?
c# - ReSharper 抱怨方法可以是静态的,但不是
为什么 ReSharper 在方法可以变为静态时会抱怨,但不是?
是因为只创建了一个静态方法的实例(在类型上),从而节省了性能吗?
c# - 我可以通过在 C# 中使用更多静态方法来获得函数式编程 (F#) 的相同好处吗?
我承认我还没有深入了解 F#。但是在 30,000 英尺的描述中,他们一直在谈论易于测试且没有可变状态的代码。这和静态方法一样吗?
我可以通过在具有所有静态方法的类中编写一些代码来获得 F# 的好处吗?
我只是在寻找简短的答案,我知道有关该主题的整本书都存在。
linq - 静态方法与使用 Linq2Sql 的存储库模式
我想到了在部分 Linq 查询上创建静态方法的想法,例如
因此,例如,我可以通过以下方式轻松找到用户:
这是公认的设计模式吗?与存储库模型相比,这样做的优点/缺点是什么?
java - 帮助查看以下代码,它是线程安全的吗?
构造函数 Foo() 可能会从多个线程中调用。我关心的是私有静态字段“callback”和静态方法“getCallback()”。
可以看出,每次调用“getCallback()”时,都会为静态字段“回调”分配一个新值。
我的猜测是它不是线程安全的,因为关键字static总是附加到类而不是实例上,这意味着 Foo 的静态字段“回调”可能会被构造另一个 Foo() 的其他线程覆盖. 它是否正确?
如果我错了,请纠正我。谢谢!
编辑:我的目的是在课堂上的某个地方保留“回调”,以便以后可以重用它。但这并不容易,因为 Foo 从一个类扩展而来,该类具有强制传递“回调”的构造函数。