零基础java自学流程-Java语言进阶56
1.Runtime类的主要作用
在每个JVM进程中,都有一个带有Runtime类的对象,其主要功能是获取Runtime环境属性或创建新进程。
在定义Runtime类时,它的构造函数已经被私有了(单例设计模式的应用程序),以确保在整个Runtime中只有一个Runtime对象。所以在Runtime类中有一个静态方法来获取Runtime实例
public static Runtime getRuntime();
2.Runtime类的定义形式
Runtime类中有以下方法: public long totalMemory();//返回所有可用内存空间 public long maxMemory();//返回最大可用内存空间 public long freeMemory();//返回空余内存空间
例如:观察内存大小:
public class TestDemo{ public static void main(String[] args){ Runtime runtime=Runtime.getRuntime(); System.out.println("MAX="+runtime.maxMemory()); System.out.println("Total="+runtime.totalMemory()); System.out.println("FREE="+runtime.freeMemory()); } }
如果一旦产生了过多垃圾,那么就会改变可用的内存空间大小,为此Runtime类里面提供了:public void gc();手动实现JVM的gc机制。
package TestDemo; public class TestDemo{ public static void main(String[] args){ Runtime runtime=Runtime.getRuntime(); System.out.println("MAX="+runtime.maxMemory()); System.out.println("Total="+runtime.totalMemory()); System.out.println("FREE="+runtime.freeMemory()); String str=""; for (int i = 0; i < 9000; i++) { str+=i; } System.out.println("MAX="+runtime.maxMemory()); System.out.println("Total="+runtime.totalMemory()); System.out.println("FREE="+runtime.freeMemory()); runtime.gc(); System.out.println("MAX="+runtime.maxMemory()); System.out.println("Total="+runtime.totalMemory()); System.out.println("FREE="+runtime.freeMemory()); } }
1. Runtime类使用单例设计模式,并且必须通过内部的getRuntime()方法获得实例化的对象
2. Runtime类为手动gc提供了gc()
想要系统学习JAVA推荐JAVA300集
上一篇:
IDEA上Java项目控制台中文乱码