前往小程序,Get更优阅读体验!
立即前往
腾讯云
开发者社区
文档 建议反馈 控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
发布
首页
学习
活动
专区
工具
TVP 最新优惠活动
返回腾讯云官网
社区首页 > 专栏 >java 标准输出与标准错误 out与 err 区别 用法 联系 java中的out与err区别 System.out和System.err的区别 System.out.println和Sy

java 标准输出与标准错误 out与 err 区别 用法 联系 java中的out与err区别 System.out和System.err的区别 System.out.println和Sy

作者头像
noteless
发布2018-09-11 11:12:58
1.6K0
发布2018-09-11 11:12:58
举报
文章被收录于专栏: noteless

本文关键词:

java 标准输出与标准错误    out与 err 区别 用法 联系  java中的out与err区别  System.out和System.err的区别 System.out.println和System.err.println的区别 Java重定向System.out和System.err

概述

操作系统一般都有三个标准文件描述符:标准输入,标准输出,标准出错

这是操作系统的一种抽象表达

不同的语言需要有不同的具体表达方式,当然也不过是另一种包装抽象

比如c++的  cin cout cerr

Java中则是的System.in,System.out,System.err


示例

输出结果:

----------------

----------------

可以看得出来:

运行多次  err的打印信息位置是不固定的


JDK文档

代码语言:javascript
复制
代码语言:javascript
复制
 /**
     * The "standard" output stream. This stream is already
     * open and ready to accept output data. Typically this stream
     * corresponds to display output or another output destination
     * specified by the host environment or user.
     * <p>
     * For simple stand-alone Java applications, a typical way to write
     * a line of output data is:
     * <blockquote><pre>
     *     System.out.println(data)
     * </pre></blockquote>
     * <p>
     * See the <code>println</code> methods in class <code>PrintStream</code>.
     *
     * @see     java.io.PrintStream#println()
     * @see     java.io.PrintStream#println(boolean)
     * @see     java.io.PrintStream#println(char)
     * @see     java.io.PrintStream#println(char[])
     * @see     java.io.PrintStream#println(double)
     * @see     java.io.PrintStream#println(float)
     * @see     java.io.PrintStream#println(int)
     * @see     java.io.PrintStream#println(long)
     * @see     java.io.PrintStream#println(java.lang.Object)
     * @see     java.io.PrintStream#println(java.lang.String)
     */
    public static final PrintStream out = null;

    /**
     * The "standard" error output stream. This stream is already
     * open and ready to accept output data.
     * <p>
     * Typically this stream corresponds to display output or another
     * output destination specified by the host environment or user. By
     * convention, this output stream is used to display error messages
     * or other information that should come to the immediate attention
     * of a user even if the principal output stream, the value of the
     * variable <code>out</code>, has been redirected to a file or other
     * destination that is typically not continuously monitored.
     */
    public static final PrintStream err = null;

是System 的两个内置变量   都是 PrintStream  类型的

out:

“标准”输出流。此流已打开并准备接受输出数据。

    通常,此流对应于显示器输出或者由主机环境或用户指定的另一个输出目标。

err:

“标准”错误输出流。此流已打开并准备接受输出数据。

    通常,此流对应于显示器输出或者由主机环境或用户指定的另一个输出目标。

    按照惯例,此输出流用于显示错误消息

    或者显示那些即使用户输出流(变量 out 的值)已经重定向到通常不被连续监视的某一文件或其他目标,也应该立刻引起用户注意的其他信息。

也就是说,out用于输出,err用于一切你认为逻辑上是错误的东西,需要引起注意的东西


差别

System.out在JVM和操作系统都具有缓存功能,

就是你输出的东西不一定实时输出,有时候会积攒到一定数量才会输出

System.err实时输出(默认设置,可以改)

这也是为什么err打印位置不固定的原因

如果使用了log4j的日志记录,且设定错误等级的话  System.err会被记入日志,System.out不会

而且一般在IDE中使用err ,都会变色的比如eclipse中红色

System.setErr()System.setOut() 可以重定向这两个流

代码语言:javascript
复制
System.setOut(new PrintStream(new FileOutputStream(new File( "d://out.txt "))));
System.setErr(new PrintStream(new FileOutputStream(new File( "d://err.txt ")))); 

重定向后没有输出了

本文参与  腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-07-04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与  腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
LV.
文章
0
获赞
0
目录
  • 概述
  • JDK文档
  • 差别
领券
问题归档 专栏文章 快讯文章归档 关键词归档 开发者手册归档 开发者手册 Section 归档

玻璃钢生产厂家辽宁商场美陈雕塑制作玻璃钢恐龙雕塑批发代理烟台火烈鸟玻璃钢雕塑定制临夏玻璃钢雕塑制作厂家商场美陈制作设计公司商场美陈定做玻璃钢雕塑设计工作室玻璃钢浮雕不锈钢公园雕塑厂永济玻璃钢座椅雕塑玻璃钢仿真盘子雕塑文山玻璃钢雕塑零售天津玻璃钢雕塑材质辽宁玻璃钢卡通雕塑制作贵港市玻璃钢雕塑湖州卡通玻璃钢雕塑生产厂家丹棱玻璃钢卡通雕塑泡沫玻璃钢雕塑制作工艺优惠的玻璃钢雕塑设计甘肃玻璃钢马雕塑厂家肇庆玻璃钢动物雕塑图片哈尔滨玻璃钢动物雕塑玻璃钢马雕塑艺术小品仿真透明玻璃钢雕塑制作大型玻璃钢彩绘雕塑成都玻璃钢雕塑公司厂家南昌学校玻璃钢雕塑优势嘉兴玻璃钢雕塑制作厂家七龙珠商场美陈济南玻璃钢小猪佩奇雕塑玻璃钢卡通兔雕塑香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化