JAVA:什么时候应该是静态的还是动态的

时间:2012-08-08 20:19:48

标签: java dynamic static

我有一个基本上解析文件并将结果存储在hashmap中的类,这个类应该处理目录中的所有文件(通常是< 10个文件)。该过程与单个线程呈线性关系。

为了最佳实践,它应该是一个静态还是动态的类?

4 个答案:

答案 0 :(得分:3)

如果即使没有创建和初始化“对象”,调用解析方法也有意义,请使用static方法

即:不要使用

Parser p = new Parser();
HashMap result = parser.parse("directory");

如果您可以轻松执行以下操作:

HashMap result = Parser.parse("directory");

Java: when to use static methods

答案 1 :(得分:1)

如果您没有任何理由来实例化该类,我相信static修饰符是合适的。

此外,根据this question,只有嵌套类可以被称为静态,当它们存在时,您可以使用嵌套类而不需要创建外部类的实例。

答案 2 :(得分:0)

我不确定该类,但你可以通过公共访问(直接或通过访问器)使这个hashmap成为静态。

答案 3 :(得分:0)

在编译时未知类的名称时,将完成动态类加载。我没有看到在你的特定情况下使用“动态”修饰符的原因。