加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 如何从代码库中删除System.out.println

发布时间:2020-12-14 17:43:49 所属栏目:Java 来源:网络整理
导读:我们有一个巨大的(旧的旧 Java)代码库,其中许多文件(大约5k)都有System.out.println.我们计划将其删除,以进行清理/演示.我们如何编写一个脚本来代替它们,而不会在代码中引入任何问题?脚本不能盲目删除它们,因为以下情况可能是一个问题: if () some.code...
我们有一个巨大的(旧的旧 Java)代码库,其中许多文件(大约5k)都有System.out.println.我们计划将其删除,以进行清理/演示.我们如何编写一个脚本来代替它们,而不会在代码中引入任何问题?脚本不能盲目删除它们,因为以下情况可能是一个问题:
if ()
  some.code...
else
  System.out.println(...);
DB.close();

我正在考虑用’;’替换它们.这将照顾上述情况.你看到其他问题吗?任何其他建议?

解决方法

你有没有考虑这个傻事:
System.out.println(" Print " +  object.changeState() );

我不认为这是发生的,但是println可能执行一个实际执行系统所依赖的一些操作的方法,并且可能会引入微妙的错误(相信我或不相信,但是我目睹了这一点)

可能会用记录器替代并禁用记录器.

或使用NullObject模式创建一个空对象:

public final class DevNull { 
    public final static PrintStream out = new PrintStream(new OutputStream() {
        public void close() {}
        public void flush() {}
        public void write(byte[] b) {}
        public void write(byte[] b,int off,int len) {}
        public void write(int b) {}

    } );
}

并替换

System.out.println();

DevNull.out.println();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读