首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >System类

System类

原创
作者头像
用户8639654
修改2021-07-22 14:24:58
修改2021-07-22 14:24:58
5200
举报
文章被收录于专栏:云计算运维云计算运维

System是lang包下的类,可以直接使用。

System 类包含一些有用的类字段和方法。它不能被实例化。

常用类方法

static void gc() 运行垃圾回收器。

测试代码如下:其中的Person类就是一个简单的类,只有姓名和年龄两个成员变量。

代码语言:javascript
复制
package com.system.test;

/*
 * System类中有一些常用的类字段和类方法,其本身无法实例化
 * 主要类方法:
 * 		static void gc()    运行垃圾回收器。 
 *      static void exit(int status)   终止当前正在运行的 Java 虚拟机。 
 *      static long currentTimeMillis()    返回以毫秒为单位的当前时间。 
 *      
 *      static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 
 *         从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。 
 */
public class SystemDemo_GC {

	public static void main(String[] args) {
		//测试垃圾回收器
		//在执行JVM中的垃圾回收前,会先去调用finallize()方法,子类也可以重写方法
		Person p = new Person("java", 12);
		
		System.out.println(p);  //Person [name=java, age=12]
		p = null;
		System.gc();   //使用完成了Person [name=java, age=12]
	}

}

static void exit(int status) 终止当前正在运行的 Java 虚拟机。 终止当前正在运行的 Java 虚拟机。参数用作状态码;根据惯例,非 0 的状态码表示异常终止。

测试代码如下:

代码语言:javascript
复制
package com.system.test;

/*
 * System类中有一些常用的类字段和类方法,其本身无法实例化
 * 主要类方法:
 * 		static void gc()    运行垃圾回收器。 
 *      static void exit(int status)   终止当前正在运行的 Java 虚拟机。 终止当前正在运行的 Java 虚拟机。参数用作状态码;根据惯例,非 0 的状态码表示异常终止。
 *      static long currentTimeMillis()    返回以毫秒为单位的当前时间。 
 *      
 *      static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 
 *         从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。 
 */
public class SystemDemo_Exit {

	public static void main(String[] args) {
		//测试exit()方法
		System.out.println("我喜欢JavaSE");
		
		//使用exit()方法正常退出
		System.exit(0);   //0表示正常退出
		
		System.out.println("我喜欢JavaEE");

	}

}

static long currentTimeMillis() 返回以毫秒为单位的当前时间。

测试代码如下:

代码语言:javascript
复制
package com.system.test;

/*
 * System类中有一些常用的类字段和类方法,其本身无法实例化
 * 主要类方法:
 * 		static void gc()    运行垃圾回收器。 
 *      static void exit(int status)   终止当前正在运行的 Java 虚拟机。 终止当前正在运行的 Java 虚拟机。参数用作状态码;根据惯例,非 0 的状态码表示异常终止。
 *      static long currentTimeMillis()    返回以毫秒为单位的当前时间。 
 *      
 *      static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 
 *         从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。 
 */
public class SystemDemo_currentTimeMillis {

	public static void main(String[] args) {
		//测试currentTimeMillis()
		//我们使用时间都以1970年1月1日0点开始作为起点
		//这个暂时对我们来说单独没有太大意义
		//可以使用此方法来计算代码运行时间
		long start = System.currentTimeMillis();
		for(int i=0; i<10000; i++)
		{
			System.out.println("hello " + i);
		}
		long end = System.currentTimeMillis();
		System.out.println("运行消耗" + (end-start) +"毫秒");

	}

}

static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)

从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。

命名不正确是因为这是一个老的方法,用的地方很多,导致后来没办法修改了,只能将就

测试代码如下:

代码语言:javascript
复制
package com.system.test;

import java.util.Arrays;

/*
 * System类中有一些常用的类字段和类方法,其本身无法实例化
 * 主要类方法:
 * 		static void gc()    运行垃圾回收器。 
 *      static void exit(int status)   终止当前正在运行的 Java 虚拟机。 终止当前正在运行的 Java 虚拟机。参数用作状态码;根据惯例,非 0 的状态码表示异常终止。
 *      static long currentTimeMillis()    返回以毫秒为单位的当前时间。 
 *      
 *      static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 
 *         从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。 
 *         命名不正确是因为这是一个老的方法,用的地方很多,导致后来没办法修改了,只能将就
 *         参数:
 *				src - 源数组。
 *				srcPos - 源数组中的起始位置。
 *				dest - 目标数组。
 *				destPos - 目标数据中的起始位置。
 *				length - 要复制的数组元素的数量。 
 */
public class SystemDemo_Arraycopy {

	public static void main(String[] args) {
		//测试arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
		//这里必须要建立两个数组
		int[] arr1 = {1,2,3,4,5};
		int[] arr2 = {23,34,33,45,35};
		
		//调用方法
		System.arraycopy(arr1, 1, arr2, 2, 2);
		
		//输出查看
		System.out.println(Arrays.toString(arr1));
		System.out.println(Arrays.toString(arr2));
	}

}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档