JavaSE06_常用類之System

常用類之System


簡要說明:

 

1.System類代表的是當前JAVA程序的運行平臺

2.System類提供了很多靜態方法來做系統級的操作(具體見程序)


import java.util.Map;


public class SystemTest
{
	/**
	 * System類方法使用測試(java 7)
	 */
	public static void main(String[] args)
	{
		//獲得系統所有環境變量,在這裏我們可以找到熟悉的 JAVA_HOME
		Map<String,String> env=System.getenv();
		for(String one:env.keySet())
		{
			System.out.println(one+":"+env.get(one));
		}
		//當然我們也可以直接獲取某個環境變量,只要你知道他的名字
		System.out.println(System.getenv("java_home"));
		System.out.println("-----------------------------");
		
		//獲得系統屬性 更多的請參見JAVA API
		System.out.println(System.getProperty("os.name"));
		System.out.println(System.getProperty("java.vm.name"));
		System.out.println(System.getProperty("java.version"));
		System.out.println(System.getProperty("user.home"));
		System.out.println(System.getProperty("user.dir"));
		System.out.println("-----------------------------");
		
		//由對象地址計算的hashCode,標識對象的唯一性(新手請繞過)
		String s1=new String("cxy");
		String s2=new String("cxy");
		System.out.println("對象s1和s2的自身的hashCode是否一樣:"+(s1.hashCode()==s2.hashCode()));
		System.out.println("對象s1和s2的由地址計算的hashCode是否一樣:"+(System.identityHashCode(s1)==System.identityHashCode(s2)));
		
		String s3="cxy";
		String s4="cxy";
		System.out.println("對象s3和s4的由地址計算的hashCode是否一樣:"+(System.identityHashCode(s3)==System.identityHashCode(s4)));
		System.out.println("-----------------------------");
		
		//兩個獲取系統當前時間的方法(1970年1月1日午夜的時間差)
		System.out.println(System.currentTimeMillis());  //毫秒級
		System.out.println(System.nanoTime());  //納米級
		System.out.println("-----------------------------");
		
		System.runFinalization();  //運行對象的finalize方法。
		System.gc();  //運行垃圾回收器(官方解釋) 實際上這種運行可能只是建議性運行
		
		//終止當前運行的java虛擬機(官方文檔翻譯)
		//實際上調用的是Runtime.getRuntime().exit(status)
		System.exit(0);  //參數 如果是非0代表異常終止,多放在捕獲異常的catch塊中
	}

}


發佈了132 篇原創文章 · 獲贊 1 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章