关于类的所有方法中的静态

时间:2012-08-18 14:29:18

标签: java

我正在浏览java类,其中我发现所有方法都是静态的,我想知道什么时候有需求或者当我们必须在所有方法前面加上static时加上条件。是任何一种设计模式..?

4 个答案:

答案 0 :(得分:4)

这通常用于实用程序类。想想例如Math类。您不需要对象的实例来计算2个数字的最小值,因此Math.min是静态方法是有道理的。

然而,过度使用静态方法/字段is not necessarily a good design practice

答案 1 :(得分:1)

确切地说:实用程序模式

http://en.wikipedia.org/wiki/Utility_pattern

答案 2 :(得分:0)

帮助程序类通常只提供静态方法。这些类提供的某些方法不仅仅针对一种对象,而是可以在整个项目中共享。例如,MathHelper可以定义一个计算浮点值数组平均值的方法,另一个用于计算2个点之间的距离等等。

答案 3 :(得分:0)

具有所有静态方法的类用于以下目的:

1)复制自Joshua Bloch Effective Java

  

接口不能有静态方法,所以按惯例,静态工厂方法   名为Type的接口放在名为Types的不可实例化的类(Item 4)中。   例如,Java Collections Framework有三十二个方便   其集合接口的实现,提供不可修改的集合,   同步集合等。几乎所有这些实现都是   通过静态工厂方法在一个不可实例化的类(java.util.Collections)中导出。   返回的对象的类都是非公共的。

2)@tgoossens建议的实用模式

相关问题