Java與系統相關的類

java程序在不一樣的操做系統上運行時,可能須要獲取平臺相關的屬性,或者調用平臺命令來完成特定的功能。java提供了System類和Runtime類來與程序的運行平臺進行交互。java

1.System類表明當前java程序的運行平臺,程序不能建立System類的對象,System類提供一些經常使用的類變量和類方法,容許直接經過System類來與程序的運行平臺進行交互。system類提供了表明標準輸入輸出和錯誤輸出的類變量,並提供了一些靜態方法用於訪問環境變量、系統屬性的方法,還提供了加載文件和動態連接庫的方法。加載文件和動態鏈接庫主要對native方法有用。System類還提供了通知系統進行垃圾回收的gc()方法和runFinalization(),System類還有兩個獲取系統當前時間的方法currentTimeMillis()-獲取系統時間以毫秒爲單位,nanoTime()-以納秒爲單位。System類的in、out、err分別提供了系統的標準的輸入、標準的輸出、錯誤輸出流。操作系統

2.Runtime類表明java程序的運行的環境,每一個java程序都有一個與之對應的Runtime實例,應用程序經過該對象與其運行時環境相連。應用程序不能建立本身的Runtime實例,但能夠經過getRuntime()方法獲取與之相關聯的Runtime對象。Runtime類也提供了gc()方法和runFinalization()方法來通知系統進行垃圾回收,清理系統資源,並提供load(String filename)和loadLibrary(String libname)方法來加載文件和動態資源連。Runtime類表明Java程序的運行時環境,能夠訪問JVM的相關信息,如處理器數量、內存信息。Runtime的另外一個功能,他能夠直接啓動一個進程來運行操做系統的命令。code

package com.lanou.test;
public class Demo05 {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Runtime rt=Runtime.getRuntime();
		System.out.println("處理器個數:"+rt.availableProcessors());
		System.out.println("空閒內存數:"+rt.freeMemory());
		System.out.println("總內存數:"+rt.totalMemory());
		System.out.println("可用最大內存數:"+rt.maxMemory());
	}
}
package com.lanou.test;
public class Demo06 {
	public static void main(String[] args) throws Exception {
		// TODO Auto-generated method stub
         Runtime rt=Runtime.getRuntime();
         rt.exec("notepad.exe");
	}

}
相關文章
相關標籤/搜索