在Java 语言内部,java.lang.Runtime 对象就是一个使用单例模式的例子。
在每一个Java 应用程序里面,都有惟一的一个Runtime 对象。
通过这个Runtime 对象,应用程序可以与其运行环境发生相互作用。
Runtime 类提供一个静态工厂方法getRuntime():: public static Runtime getRuntime();
通过调用此方法,可以获得Runtime 类惟一的一个实例: Runtime rt = Runtime getRuntime();
Runtime 对象通常的用途包括:执行外部命令;返回现有内存即全部内存;运行垃圾收集器;加载动态库等。
下面的例子演示了怎样使用Runtime 对象运行一个外部程序。
代码清单8:
怎样使用Runtime 对象运行一个外部命令
import java.io.*;
public class CmdTest {
public static void main(String[] args) throws IOException {
Process proc = Runtime.getRuntime().exec("notepad.exe");
} }
上面的程序在运行时会打开notepad 程序。
应当指出的是,在Windows 2000 的环境中,如果需要打开一个Word 文件,而又不想指明Word 软件安装的位置时,可以使用下面的做法: Process proc = Runtime.getRuntime().exec( "cmd /E:ON /c start MyDocument.doc"); 在上面,被执行的命令是start MyDocument.doc,开关E:ON 指定DOS 命令处理器允许命令扩展,而开关/C 指明后面跟随的字符串是命令,并在执行命令后关闭DOS 窗口,start 命令会开启一个单独的窗口执行所提供的命令。