//System类的常用方法:
public static void main(String[] args) {
//1 arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
/* arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
* src: 源数组
* srcPos: 源数组中的起始位置
* dest: 目标数组
* destPos: 目标数据中的起始位置
* length: 要复制的数组元素的数量
* */
int[] arr = { 1,2,3,4,5,6,7,8,9};
int[] arr1 = { 9,8,7,6,5,4,3,2,1};
System.arraycopy(arr, 0, arr1, 0, arr.length);
System.out.println( Arrays.toString(arr1) );
//2 获取当前系统时间 System.currentTimeMillis()
long time = System.currentTimeMillis(); //获取毫秒级 当前系统时间
//3 获取对象的hashCode,
/*
* 因为对象的hashCode()经常要被重载,所以不一定真实,而SystemidentityHashCode(object e)
* 一定能够获取到对象的真实hashCode, 即内存地址;
* */
System.identityHashCode("字符串");
//3 退出jvm System.exit(int status) 任意一个int值都可以作为参数
// System.exit(0); 不是退出线程,而是退出了JVM,彻底结束程序
//4 建议jvm赶快启动垃圾回收器 回收垃圾
System.gc();
//5 根据环境变量的名字 获取环境变量
System.getenv("PATH");
//6 获取jvm的各种属性
/*
* 参数名字:
* 1) java.version java运行时环境版本
* 2) java.home java安装目录
* 3) os.name 操作系统的名称
* 4)os.version 操作系统的版本
* 5) user.name 用户的账户名称
* 6) user.home 用户的主目录
* 7) user.dir 用户的当前工作目录
* */
System.getProperty("property名");
/Runtime类
//获取java运行时相关的运行时对象
Runtime rt = Runtime.getRuntime();
System.out.println( "处理器数量: "+ rt.availableProcessors() );
System.out.println( "JVM总内存数: "+ rt.totalMemory()/1000_1000 );
System.out.println( "jvm空闲内存数: "+ rt.freeMemory()/1000_1000 );
System.out.println( "jvm可用最大内存数: "+rt.maxMemory()/1000_1000 );
try {
rt.exec("/Applications/QQ.app");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
网友评论