Java 为什么数学课的方法是静态的?
为什么数学类的方法是静态的?因为它们不需要任何内部状态,但Java中没有独立的函数——每个函数都必须是类的成员。因此,它们是静态的。很大程度上是因为它们是实用方法,其中许多方法可以应用于原语的计算。该类的目的在很大程度上是提供一个标准函数库,其中许多函数不需要直接应用于对象。它们是静态的,因为这些方法不依赖数学类的属性。静态函数没有“副作用”。当您希望从计算中得到单个结果时,不需要跟踪状态变量。可以像调用数学代码库一样调用它们。当您有不涉及状态或类的方法(例如,数学函数、数组上的实用程序等)时,该类仅用于“分组”将它们放在一个连贯的位置。因此,您将它们列为静态(因为它们不涉及状态),并且您从未实际实例化该类。以及其他人所说的内容。。。静态方法调用更快,原因有二:Java 为什么数学课的方法是静态的?,java,Java,为什么数学类的方法是静态的?因为它们不需要任何内部状态,但Java中没有独立的函数——每个函数都必须是类的成员。因此,它们是静态的。很大程度上是因为它们是实用方法,其中许多方法可以应用于原语的计算。该类的目的在很大程度上是提供一个标准函数库,其中许多函数不需要直接应用于对象。它们是静态的,因为这些方法不依赖数学类的属性。静态函数没有“副作用”。当您希望从计算中得到单个结果时,不需要跟踪状态变量。可以像调用数学代码库一样调用它们。当您有不涉及状态或类的方法(例如,数学函数、数组上的实用程序等)时,
它们需要是静态的,因为数字是原语,不是正确的对象,所以它们不能是数字类型的实例方法 现在Java也有用于装箱编号的类,但是为每个数学运算创建一个对象效率太低
在其他语言中,例如Smalltalk,数字是对象,所有算术运算都是实例方法。而且,它们不是多态的/虚拟的。它们是静态的,因为它们被声明为
静态的
。它们可以是静态的,因为它们不依赖于实例变量,也不需要重写或调用多态性。静态函数不是没有定义副作用的。