如何在java中替换System类?

时间:2013-07-10 18:51:33

标签: java class oop system

一段代码执行相同的逻辑,但有两个不同的入口点。因此,在一个入口点的情况下它必须使用System.getProperty,而在另一个入口点的情况下必须使用this.getProperty。理想情况下,我希望在其中一种情况下暂时方便地替换System,反之亦然,这样我就不必复制两个不同入口点的逻辑。

2 个答案:

答案 0 :(得分:0)

您可以根据需要this.getProperty(调用System.getProperty(静态方法。创建一个布尔值useSystem作为this的字段。

然后,按如下方式定义this.getProperty(

String this.getProperty(String arg){
    if useSystem return System.getProperty(arg);
    else{
        //your logic for returning a property
    }
}

获取财产时始终致电this.getProperty(。根据入口点,您可以将this.useSystem设置为truefalse

答案 1 :(得分:0)

您可以使用简单的if else语句:

String property = isEntryPoint ? System.getProperty() : this.getProperty();

假设isEntryPoint是一个布尔标志,用于确定正在使用的入口点。