我有一个基本上解析文件并将结果存储在hashmap中的类,这个类应该处理目录中的所有文件(通常是< 10个文件)。该过程与单个线程呈线性关系。
为了最佳实践,它应该是一个静态还是动态的类?
答案 0 :(得分:3)
如果即使没有创建和初始化“对象”,调用解析方法也有意义,请使用static
方法
即:不要使用
Parser p = new Parser();
HashMap result = parser.parse("directory");
如果您可以轻松执行以下操作:
HashMap result = Parser.parse("directory");
答案 1 :(得分:1)
如果您没有任何理由来实例化该类,我相信static
修饰符是合适的。
此外,根据this question,只有嵌套类可以被称为静态,当它们存在时,您可以使用嵌套类而不需要创建外部类的实例。
答案 2 :(得分:0)
我不确定该类,但你可以通过公共访问(直接或通过访问器)使这个hashmap成为静态。
答案 3 :(得分:0)
在编译时未知类的名称时,将完成动态类加载。我没有看到在你的特定情况下使用“动态”修饰符的原因。