现在的位置: 首页 > 综合 > 正文

《java中System类》

2018年04月18日 ⁄ 综合 ⁄ 共 1460字 ⁄ 字号 评论关闭

 

                                                                                                System类

 

 

System类是一个特殊类,它是一个公共最终类,不能被继承,也不能被实例化,即不能创建System类的对象。System类功能强大,与Runtime一起可以访问许多有用的系统功能。System类保存静态方法和变量的集合。标准的输入、输出和Java运行时的错误输出存储在变量in,out和err中。由System类定义的方法丰富并且实用。System类中所有的变量和方法都是静态的,使用时以System作为前缀,即形如“System.变量名”和“System.方法名”。

1.标准的输入输出
System类包含三个使用频繁的公共数据流,分别是:标准输入(in)、标准输出(out)、标准错误输出(err)。

① public static final InputStream in--------标准输入。

这个属性是InputStream类的一个对象,它是未经包装的原始Input Stream,读取System.in之前应该先加以包装。可以通过read()方法读取字节数据。

② public static final PrintStream out--------标准输出。

③ public static final PrintStream err---------标准输出。

out和err都已经被包装成PrintStream对象,所以可以直接使用System.out和System.err。可以通过方法print()、println()或write()方法很方便地完成各种数据类型的输出。out与err使用上的不同是: System.out用于输出普通信息,out的输出一般需要缓存;System.err一般情况下用来打印错误信息,不需要缓存,快速显示紧急信息。

关于InputStream类和PrintStream类将在java.io包中介绍。

2.System类的常用方法
System类有一些有用的方法,这些方法用于处理运行环境。下面简单介绍几个方法及其功能。

(1)获取当前时间

使用currentTineMillis( )可以记录程序执行的时间,这是一个特别有意义的用法。

currentTineMillis( )方法返回自从1970年1月1日午夜起到现在的时间,时间单位是毫秒。如果要记录程序中一段有问题程序的运行时间,可以在这段程序开始之前调用currentTineMillis( )方法存储当前时间,在这段程序结束处再次调用currentTineMillis( )方法。执行该段程序所花费的时间为其结束时刻的时间值减去其开始时刻的时间值。下面的程序段可以用来估计一下执行某个循环所占用的时间:

long startTime=System.currenTimerMillis( );//记录循环开始时间

int sum=0;

for(int i=0;i<100000;i++){

sum+=i;

}

long endTime=System.currentTimeMillis( );// 记录循环结束时间

System.out.Println("time: "+(endTime-startTime)+ "milliseconds. ");

注意:虽然使用cuttentTimeMillis()方法可以计算出当前的日期和时间,但是获取当前日期和时间最好使用java.util中的Date类。

抱歉!评论已关闭.