【问题标题】:Purpose of class with all static method [duplicate]具有所有静态方法的类的目的[重复]
【发布时间】:2013-05-24 09:40:06
【问题描述】:

我在java中来了一段代码,其中一个类仅包含静态方法,但该类本身并未声明为静态。我只是想知道什么时候需要这种设计。

【问题讨论】:

  • 它可能是一个实用程序类。不需要创建它的实例,只是一堆静态方法。
  • 只有嵌套类可以声明为静态的。这并不意味着他们没有非静态方法。
  • Math class 就是一个这样的例子。
  • @Maba 没错。谢谢

标签: java


【解决方案1】:

这个成语称为实用程序类。它只是一个放置自然不属于任何一个类的函数的地方,或者由于任何其他原因而被排除在动态调度之外的函数。 JDK中有几个例子,例如MathCollectionsArrays

您似乎也对static class 的语义感到困惑。这与班级的工作方式无关(它只是一个普通班级);它与静态类与其封闭类的关系有关,并且实际上指定该类与它没有特定关系,除了访问范围,而不是非静态(内部) 类,必须使用封闭实例进行实例化。

【讨论】:

    【解决方案2】:

    您使用静态方法,因此无需实例化类即可使用它们...

    这是静态方法的主要目标......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-19
      • 1970-01-01
      • 2019-11-19
      • 2015-08-13
      • 2017-12-04
      • 2011-01-29
      • 1970-01-01
      • 2021-05-10
      相关资源
      最近更新 更多