(一般后面带s的类,是其无s的工具类)
类的位置:
java.lang.System
System类提供静态方法,并可以获取与系统相关的信息或系统级操作.
常用的方法:
1.public static long currentTimeMillis();获取当前时间的毫秒值.
1秒 = 1000毫秒
时间零点:
1970.1.1(起点)(系统自动匹配当前系统的时区)
作用:
*性能测试(记录开始时间start,消耗时间 = 结束时间 - start)
public void run(){
//记录开始时间
long start = System.currentTimeMillis();
for(int i = 0;i<100000;i++){
}
//获得执行时间
long time = System.currentTimeMillis() - start;
}
2.public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length);将数组中指定元素拷贝到另一个数组
3.public static void gc():通知垃圾回收器回收垃圾对象(没有指向的对象)
public class SystemDemo {
public static void main(String[] args){
for(int i = 0; i < 10;i++){
//创建Person对象
Person p = new Person();
//调用gc方法,可以观察到输出的"被回收了吗?"并没有10个
System.gc();
}
}
}
class Person{
@Override
protected void finalize() throws Throwable{
System.out.println("被回收了吗?");
}
}
*finalize()是Object类的方法,该方法是有JVM自动调用的,当该对象被垃圾回收器回收的时候,JVM会自动调用该方法,也可能不调用.
System.gc()只是起到一个通知垃圾回收器的作用.
4.public staitic void exit():退出jvm,终止程序运行.
使用方法:
System.exit(0);//正常终止
System.exit(-1);//异常终止
5.public static Properties getProperties():获取
当前系统的所有属性:包括系统名称
*获取其中的属性:传入字符串参数,是"="左边的名字.
//获取所有的属性
Properties prop = System.getProperties();
//获得操作系统的名字
prop.getProperty("os.name");
其中属性可以通过打印,对照api查找属性.