初始化之后
defaultProps,您可以将其内容提供给应用程序中的其他对象,例如通过公共静态访问器方法,例如:
public class Config { private static Properties defaultProps = new Properties(); static { try { FileInputStream in = new FileInputStream("custom.properties"); defaultProps.load(in); in.close(); } catch (Exception e) { e.printStackTrace(); } } public static String getProperty(String key) { return defaultProps.getProperty(key); }}
这是最简单的方法,但是它会创建一个额外的依赖项,从而使单元测试更加困难(除非您提供了一种
Config为单元测试设置模拟属性对象的方法)。
一种替代方法是向
defaultProps需要它的每个对象注入(或从中获取单个配置值)。但是,这可能意味着如果您的调用层次结构很深,则需要向许多方法中添加额外的参数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)