一、概念讲解
翻译
运行时间
详解
私有化构造方法,不能被实例化
调用方法
直接调用
二、功能作用
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:关机并重启 } }
运行结果: