3 回答

TA貢獻1831條經驗 獲得超10個贊
首先說點Runtime類吧,他是一個與JVM運行時環境有關的類,這個類是Singleton的。我說幾個自己覺得重要的地方。
1、Runtime.getRuntime()可以取得當前JVM的運行時環境,這也是在Java中唯一一個得到運行時環境的方法。
2、Runtime上其他大部分的方法都是實例方法,也就是說每次進行運行時調用時都要用到getRuntime方法。
3、 Runtime中的exit方法是退出當前JVM的方法,估計也是唯一的一個吧,因為我看到System類中的exit實際上也是通過調用 Runtime.exit()來退出JVM的,這里說明一下Java對Runtime返回值的一般規則(后邊也提到了),0代表正常退出,非0代表異常中 止,這只是Java的規則,在各個操作系統中總會發生一些小的混淆。
4、Runtime.addShutdownHook()方法可以注冊一個hook在JVM執行shutdown的過程中,方法的參數只要是一個初始化過但是沒有執行的Thread實例就可以。(注意,Java中的Thread都是執行過了就不值錢的哦)
5、 說到addShutdownHook這個方法就要說一下JVM運行環境是在什么情況下shutdown或者abort的。文檔上是這樣寫的,當最后一個非 精靈進程退出或者收到了一個用戶中斷信號、用戶登出、系統shutdown、Runtime的exit方法被調用時JVM會啟動shutdown的過程, 在這個過程開始后,他會并行啟動所有登記的shutdown hook(注意是并行啟動,這就需要線程安全和防止死鎖)。當shutdown過程啟動后,只有通過調用halt方法才能中止shutdown的過程并退 出JVM。

TA貢獻1834條經驗 獲得超8個贊
用這個有時就是會出現毛病??赡苓€得再加些參數。
你用Desktop類。
打開一個文件
Desktop d=Desktop.getDesktop();
d.open("D:\\Games\\打磚塊\\DXBall2.exe");
這個方法肯定可以打開。它是利用windows的默認打開方式的

TA貢獻1777條經驗 獲得超3個贊
import java.io.*;
public class Files {
public static void main(String s[]) {
try{
Runtime.getRuntime().exec("D:\\Games\\打磚塊\\DXBall2.exe");
}catch(IOException e){
}
}
}
添加回答
舉報