1

我看到许多使用 BufferedReader 作为静态成员而不是实例成员的 Java 示例。这是一些最佳实践吗?我什么时候应该或不应该这样做?

4

4 回答 4

2

这是一些最佳实践吗?

当然不是。相反,在大多数情况下,这将被视为最糟糕的做法。静态成员需要非常小心地使用;经过适当的分析,成员应该只有在真正需要时才应该是静态的。

于 2012-04-10T03:41:08.753 回答
0

我认为制作BufferedReader静态成员不是任何标准。这仅取决于您想要的行为。如果它在某种需要以静态方式访问其字段的 Utils 类中,则将其设为静态。否则,我认为将其设为实例或更好的方法级变量没有任何害处。

例如,写了大量关于 Spring、Hibernate 和 Java 的教程的 Yong Mook Kim 提供了这个示例,他BufferedReader以非静态方式访问。

于 2012-04-10T03:08:51.343 回答
0

我认为静态比任何东西都更清楚。我不知道有任何标准说最好以一种或另一种方式来做。我想这取决于您需要以这种方式访问​​它的频率和原因。

于 2012-04-10T03:17:09.460 回答
0

我发现 BufferedReader 与 System.in 一起使用时不应关闭的情况;因为在这种情况下,Java 不允许重新打开它。在这种情况下,将此属性声明为静态是有意义的。

于 2012-05-21T02:16:43.780 回答