目录
前言必读
一、概念讲解
翻译
运行时间
详解
私有化构造方法,不能被实例化
调用方法
直接调用
二、功能作用
1.终止虚拟机运行
2.获取cpu线程数
3.JVM能从系统中获取的内存大小,单位为byte
4.JVM已经从系统中获取的内存大小
5.JVM剩余内存大小
6.打开cmd命令(例如打开记事本,定时关机重启等)
7.关机命令
三、代码例子
1.终止虚拟机(JVM)运行
语法:
Runtime.getRuntime().exit(0);
package three;
public class kk {
public static void main(String[] args) {
//终止虚拟机运行
System.out.println("运行1");
Runtime.getRuntime().exit(0);//0正常终止,非0异常终止
System.out.println("运行2");
}
}
运行结果:
运行1
注释:这个方法和System很像,都是终止虚拟机的运行。区别就是Runtime更底层
2.获取cpu线程数
语法:
Runtime.getRuntime().availableProcessors()
package three;
public class kk {
public static void main(String[] args) {
//获取cpu线程数
System.out.println(Runtime.getRuntime().availableProcessors());//16
}
}
运行结果:
16
3.JVM能从系统中获取的内存大小,单位为byte
语法:
Runtime.getRuntime().maxMemory()
package three;
public class kk {
public static void main(String[] args) {
//JVM能从系统中获取的内存大小,单位为byte
System.out.println(Runtime.getRuntime().maxMemory()/1024/1024);//要化为兆,除与两次1024
}
}
运行结果:
4064
4.JVM已经从系统中获取的内存大小
语法:
Runtime.getRuntime().totalMemory()
package three;
public class kk {
public static void main(String[] args) {
//JVM已经从系统中获取的内存大小,初始单位为byte
System.out.println(Runtime.getRuntime().totalMemory()/1024/1024);//要化为兆,除与两次1024
}
}
运行结果:
256
5.JVM剩余内存大小
语法:
Runtime.getRuntime().freeMemory()
package three;
public class kk {
public static void main(String[] args) {
//JVM剩余内存大小,初始单位为byte
System.out.println(Runtime.getRuntime().freeMemory()/1024/1024);//要化为兆,除与两次1024
}
}
251
6.打开cmd命令
打开记事本:
语法:
Runtime.getRuntime().exec("这里写cmd命令");
package three;
import java.io.IOException;
public class kk {
public static void main(String[] args) throws IOException {
//打开cmd命令
Runtime.getRuntime().exec("notepad");//要化为兆,除与两次1024
}
}
运行结果:
7.关机命令
语法:
System.out.println(Runtime.getRuntime().exec("shutdown -指定参数"));
package three;
import java.io.IOException;
public class kk {
public static void main(String[] args) throws IOException {
//打开cmd命令
System.out.println(Runtime.getRuntime().exec("shutdown -s -t 3600"));//指定3600s后关机
//shutdown命令+下面参数
//-s:默认一分钟后关机
//-s -t :指定时间关机
//-a:取消关机
//-r:关机并重启
}
}
运行结果: