System许多函数的使用都是等价于Runtime.getRuntime(),可见System和Runtime之间的联系是多么密切,实际上System是依赖于Runtime类的。
Runtime的功能如下:
- 查看系统内存
- 终止JVM虚拟机
- 运行系统程序
- 使用关闭钩子
Runtime类不同于System类,它的函数大部分都不是静态的,只有一个静态函数getRuntime()。每个Java应用程序都有一个Runtime实例,使应用程序能够与其运行环境相连接,我们可通过该函数获得一个Runtime()实例,应用程序不能创建自己的Runtime实例,然后再调用其他函数。
(1)查看系统内存
long freeMemory();//返回Java虚拟机的空闲内存量 long maxMemory();//返回Java虚拟机试图使用的最大内存量 long totalMemory();//返回Java虚拟机的内存总量
代码如下:
package org.test.envm; public class RuntimeEvnt { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("内存总量:"+Runtime.getRuntime().totalMemory()); System.out.println("最大内存量:"+Runtime.getRuntime().maxMemory()); System.out.println("空闲内存量:"+Runtime.getRuntime().freeMemory()); } }
(2)终止虚拟机
可以使用exit(int status)通过启动虚拟机的关闭序列
可以使用halt(int status)强制终止目前正在运行的虚拟机
(3)运行系统程序
1、打开记事本
Runtime.getRuntime().exec("notepad");
2、打开word
Runtime.getRuntime().exec("cmd/c start Winword");
3、执行批处理
Runtime.getRuntime().exec("cmd.exe/C d:/demo/run.bat");
时间: 2024-10-12 02:28:21