System与Runtime类
System与Runtime类
System:
System代表系统,系统级的很多属性和控制方法都放在该类的内部,该类位于java.lang包。
1.成员变量
System类中包含in,out和err三个成员变量,分别代表标准输入流(键盘输入)。标准输出流(键盘输出),和标准错误输出流
2.成员方法
System类中提供了一系列系统级的操作方法
(1).public static void arraycopy(Object src,int srcPos,Object dest,int desPos,int length):
该方法是数组拷贝,也就是将一个数组中的内容复制到另外一个数组中的指定位置,性能比循坏高效
(2).public static long currentTimeMillis():
该方法的作用是返回当前计算机时间,时间计算格式为当前计算机时间和GMT时间(格林威治时间)1970年1月1号0时0分0秒所差的毫秒数
(3).public static String getProperty(String key):
该方法的作用是获得系统中的属性key对应的值
java.version java运行环境版本
java.home java安装的目录
os.name 操作系统的名称
os.version 操作系统的版本
user.name 用户的账户名称
user.home 用户的主目录
user.dir 用户的当前工作目录
package com.lili.systemRuntime;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
/**
* @author: QiJingJing
* @create: 2021/7/6
*/
public class Test1 {
public static void main(String[] args) {
System.out.println("标准输入流");
System.err.println("错误输出流");
int[] a = {1, 2, 3, 4};
int[] newArray = new int[a.length];
// 参数(原数组,原数组的起始位置,目标数组,目标数组的起始位置,长度)
System.arraycopy(a, 0, newArray, 0, a.length);
System.out.println(Arrays.toString(newArray));//[1, 2, 3, 4]
Date date = new Date(System.currentTimeMillis());
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss S");
String format = dateFormat.format(date);
System.out.println(format);
// 退出jvm
//System.exit(0);
System.out.println(System.getProperty("java.version"));//1.8.0_151
System.out.println(System.getProperty("java.home"));//C:\Program Files\Java\jdk1.8.0_151\jre
}
}
Runtime:
每个java应用程序都有一个Runtime类实例,使应用程序能够与其运行的环境相连接
package com.lili.systemRuntime;
import java.io.IOException;
/**
* Runtime类
* @author: QiJingJing
* @create: 2021/7/6
*/
public class Test2 {
public static void main(String[] args) {
// 获取java运行时相关的运行时对象
Runtime runtime = Runtime.getRuntime();
System.out.println("处理器数量" + runtime.availableProcessors() + "个");
System.out.println("jvm总内存数" + runtime.totalMemory() + "byte");
System.out.println("jvm空闲内存数" + runtime.freeMemory() + "byte");
System.out.println("jvm可用最大内存数" + runtime.maxMemory() + "byte");
// 在单独的进程中执行指定的字符串命令
try {
runtime.exec("notepad");//打开记事本
} catch (IOException e) {
e.printStackTrace();
}
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!