System类及其常用函数
System
类包含一些有用的类字段和方法。它不能被实例化。
常用方法:
1、static void
arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。
2、static long
currentTimeMillis()
返回以毫秒为单位的当前时间。
3、static void
gc()
运行垃圾回收器。建议jvm赶快启动垃圾回收期回收垃圾。
4、static Map<String,String>
getenv()
返回一个不能修改的当前系统环境的字符串映射视图。
5、static String
getenv(String name)
获取指定的环境变量值。
6、static Properties
getProperties()
确定当前的系统属性。
7、static String
getProperty(String key)
获取指定键指示的系统属性。
8、static void
exit(int status)
终止当前正在运行的 Java 虚拟机。根据惯例,非 0 的状态码表示异常终止。0表示正常终止。
代码示例如下:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 import java.util.Arrays; 2 import java.util.Properties; 3 4 class Person{ 5 6 String name; 7 8 public Person(String name) { 9 this.name = name; 10 } 11 12 @Override 13 protected void finalize() throws Throwable { 14 super.finalize(); 15 System.out.println(this.name + "被释放了"); 16 } 17 18 } 19 20 public class SystemTest { 21 22 public static void main(String[] args) { 23 // arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 24 int[] srcArray = {1,2,5,8,45,12}; 25 int[] desArray = new int[4]; 26 System.arraycopy(srcArray, 2, desArray, 0, 4); 27 System.out.println(Arrays.toString(desArray)); 28 //currentTimeMillis() 29 long currentTime = System.currentTimeMillis(); 30 System.out.println(currentTime); 31 //建议jvm赶快启动垃圾回收器回收垃圾 32 for (int i = 0; i < 4; i++) { 33 new Person("张三"+i); 34 System.gc(); 35 } 36 //获取环境变量 37 System.out.println("环境变量列表"+System.getenv()); 38 System.out.println("JAVA_HOME环境变量列表"+System.getenv("JAVA_HOME")); 39 //获取系统属性 40 Properties properties = System.getProperties(); 41 properties.list(System.out); 42 String propertie = System.getProperty("os.version"); 43 System.out.println("系统版本:"+propertie); 44 //关闭jvm 0正常关掉 1异常关掉 45 System.exit(0); 46 System.out.println("关闭之后不执行"); 47 } 48 49 }