Runtime对象
该类并没有提供构造函数。
说明不可以new对象。那么会直接想到该类中的方法都是静态的。
发现该类中还有非静态方法。
说明该类肯定会提供了方法获取本类对象。而且该方法是静态的,并返回值类型是本类类型。
由这个特点可以看出该类使用了单例设计模式完成。
该方式是static Runtime getRuntime();
|
|
Process | exec(String command) 在单独的进程中执行指定的字符串命令。 |
class RuntimeDemo
{
public static void main(String[] args) throws Exception
{
Runtime run = Runtime.getRuntime();
run.exec("notepad.exe");
}
}
打开了记事本
Process exec(String command)方法返回了一个Process类对象。
public abstract class Process 是个抽象类
Process进程类中有一个杀掉子进程的方法
abstract void | destroy() 杀掉子进程。 |
class RuntimeDemo
{
public static void main(String[] args) throws Exception
{
Runtime r = Runtime.getRuntime();
Process p = r.exec("notepad.exe");
Thread.sleep(4000);
p.destroy();
}
}
记事本被打开,停留4秒钟,然后被杀掉了。
注意:exec(String command);参数如果不写路径,只写应用程序名.exe的话,只能打开环境变量path中定义的C:\Windows\System32文件夹中的.exe文件。
别忘了写转义字符哦,\要写成\\才能识别。
class RuntimeDemo
{
public static void main(String[] args) throws Exception
{
Runtime run = Runtime.getRuntime();
Process p = run.exec("D:\\Program Files (x86)\\duowan\\yy\\YY.exe");
//Thread.sleep(4000);
//p.destroy();
}
}
还有一个重要的:
在应用程序名.exe后面加空格,再写上一个这个exe应用程序能打开的文件,就能打开这个文件了。
class RuntimeDemo
{
public static void main(String[] args) throws Exception
{
Runtime r = Runtime.getRuntime();
Process p = r.exec("notepad.exe SystemDemo.java");
//Thread.sleep(4000);
//p.destroy();
}
}
打开的是带文字的记事本:
---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------
详细请查看:http://edu.csdn.net