日期:2014-05-20  浏览次数:20643 次

Runtime 问两个简单问题
class   RuntimeTest
{
public   static   void   main(String[]   args)
{
Runtime   rt=Runtime.getRuntime();
System.out.println( "JVM   自由内存: "+rt.freeMemory());
System.out.println( "JVM   总内存: "+rt.totalMemory());
System.out.println( "JVM   试图使用的最大内存量: "+rt.maxMemory());
//   这   JVM   试图使用的最大内存量   是指什么?结果上G了,我硬件配置远远满足不了。

try
{
rt.exec( "notepad ");     //   其他的应用程序名要怎么知道?
}
catch(Exception   e)
{
e.printStackTrace();
}
}
}

class   Singleton                   {
private   static   final   Singleton   st=new   Singleton();
private   Singleton(){}
public   static   Singleton   getInstance()
{
return   st;
}
}

------解决方案--------------------
第一个返回的是是jvm试图返回的最大内存量,单位是字节。还有果内存本身没有限制,则返回值 Long.MAX_VALUE。
rt.exec( "notepad "): 应该是对于系统的命令就可以吧,如rt.exec( "regedit ");打开win注册表。
最后一个是一个单例啊,看看设计模式。