【问题标题】:5 ways to use the static keyword in Java在 Java 中使用 static 关键字的 5 种方法
【发布时间】:2009-10-17 00:05:38
【问题描述】:

我刚刚接受了一次采访,其中一个问题类似于“描述在 Java 中使用 static 关键字的 5 种方法”。我当场只能想到2个,后来又找到了2个。 5号是什么?

  1. 声明属于某个类的字段,而不是该类的实例。
  2. 声明可以在类而不是实例上调用的方法。
  3. 将嵌套类声明为静态类
  4. 定义静态类初始化器。
  5. ???

【问题讨论】:

  • 你确定它不是“最终的”吗?我用那个。 :)
  • 我认为可能不是最终的,因为我认为您可以独立于“静态”使用“最终”。
  • 什么垃圾面试问题。您在面试情况下快速提出所有五个的能力并不能真正证明 Java 知识 IMO。不能按需命名它们并不意味着您将无法在实践中有效地使用它们。

标签: java static keyword


【解决方案1】:

static import(从 java 1.5 开始):

导入静态 my.package.MyClass.*;

【讨论】:

  • 这就是你要找的那个。
  • 谢谢!我前一天看到了这个,但我完全忘记了。
【解决方案2】:

在这种情况下,声明 static interface 是否会被视为一个类?如果没有,那还有其他用途。

【讨论】:

  • 我认为这是 Robert Sedgewick 的 Strange.java 中的“接口可以工作”
【解决方案3】:

改变另一个静态方法/变量的行为。

【讨论】:

  • 考虑举一些例子来支持你的答案(没有给出简短的答案)
【解决方案4】:

常量 - 静态最终(实际上与 #1 相同,但可以考虑单独使用)

【讨论】:

  • 这不是和“属于类的字段”一样吗?
  • 它们是一样的,但是在界面中使用时可能面试官认为它们不同?
【解决方案5】:

创建一个静态块

static 
{

 // Do some static work 

}

【讨论】:

  • 同 #4 - 定义一个静态类初始化器“block”
猜你喜欢
  • 2014-09-24
  • 2012-12-30
  • 2014-09-15
  • 2010-12-18
  • 1970-01-01
  • 1970-01-01
  • 2011-07-02
  • 2021-02-17
相关资源
最近更新 更多