关于system.out

super_thinker 2010-11-01 05:00:58
是不是 实际的项目中不能留有 system.out.print 为什么不能留? 留着 会有什么坏处?
...全文
227 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
BrokenHeart0808 2010-11-01
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 super_thinker 的回复:]
引用 7 楼 liqi_wj 的回复:
日志文件 是可以输出到文件的 可以保存 以后看到错
而System.out比较占内存,而且输出到控制台后就看不到了

我之前听我一个同事说 他们公司 只要在正式部署的项目中出现 system。out 就扣钱 为什么?
这个问题有这么严重吗 会占很多内存还是 什么原因?
[/Quote]
不是问题很严重,只是让客户看见会觉得做这个系统的程序员很业余,其他倒是没什么,只要不是大量System.out就行了,我们是开发完了,再集体修改。
metsys 2010-11-01
  • 打赏
  • 举报
回复

测试的时候比较方便,正式运行时有些影响效能。

而且,通常输出的都是比较紧要的信息,控制台输出的话,会被管理员或其他人看到。
或者是输出异常信息,被客户看到不舒服。
blazingfire 2010-11-01
  • 打赏
  • 举报
回复
最好不要system.out.print。推荐使用专业日志工具如:log4j。简单的列一下原因:
在正式环境中,用system.out.print如果定向到物理文件,会导致此物理文件无限增大。会导致磁盘空间浪费,严重的导致操作系统瘫痪;另外文件过大,无法阅读,基本上丧失了诊断的作用。如果没有定位到物理文件,那就相当于啥事也不干,除了浪费资源,没有任何作用了。
专业日志工具有自己的调度机制,如每天产生产生一个,只保留最近多少天的,能确保不会占用太多空间,也诊断提供了便利;专业的日志工具和可以调整日志级别,在生产环境可以调节,可减少日志量,提高应用效率。
TearsStoneJava 2010-11-01
  • 打赏
  • 举报
回复
system.out.print 会占内存!影响程序跑的速度!
飞起航 2010-11-01
  • 打赏
  • 举报
回复
system.out类似于废话
以前项目资金按照代码行计算,system.out代码必须去,也许是那时传下来的习惯吧
luckhanjie 2010-11-01
  • 打赏
  • 举报
回复
都正式上线了,不会那么不规范的吧
super_thinker 2010-11-01
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 liqi_wj 的回复:]
日志文件 是可以输出到文件的 可以保存 以后看到错
而System.out比较占内存,而且输出到控制台后就看不到了
[/Quote]
我之前听我一个同事说 他们公司 只要在正式部署的项目中出现 system。out 就扣钱 为什么?
这个问题有这么严重吗 会占很多内存还是 什么原因?
zn85600301 2010-11-01
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 liqi_wj 的回复:]

日志文件 是可以输出到文件的 可以保存 以后看到错
而System.out比较占内存,而且输出到控制台后就看不到了
[/Quote]
控制台信息 也是可以打印在日志里的 不过是因为没必要所以很少有人打
liqi_wj 2010-11-01
  • 打赏
  • 举报
回复
日志文件 是可以输出到文件的 可以保存 以后看到错
而System.out比较占内存,而且输出到控制台后就看不到了
liuyuhua0066 2010-11-01
  • 打赏
  • 举报
回复
system.out输出到控制台,开发中可以使用。项目部署后一般用日志文件。
龙四 2010-11-01
  • 打赏
  • 举报
回复
漏掉几个也无碍
crazylaa 2010-11-01
  • 打赏
  • 举报
回复
一般都会用log4j之类的把它输出到文件。设定不同的级别,如info、warning、debug、error等等。

你可以写一个死循环,除了System.out.println什么都不干,最后会stack overflow的。
zn85600301 2010-11-01
  • 打赏
  • 举报
回复
一般都是写在专门的日志了 这样方便查错
system.out 比较业余吧 开发时测试的时候这样无所谓 打包的时候就要该成lo4j
madFatso 2010-11-01
  • 打赏
  • 举报
回复
log4j

67,518

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧