System:類中的方法和屬性都是靜態的。
常用方法:
out:標準輸出,默認是控制檯。
in:標準輸入,默認是鍵盤。
Properties getProperties();獲取系統屬性信息。因爲Properties是Hashtable的子類,也就是Map集合的一個子類對象。那麼可以通過map的方法取出該集合中的元素。該集合中存儲的都是字符串。沒有泛型定義。
setProperties("mykey""myvalue");自定義一些特有的信息。
java -Dhaha=pppp SystemDemo在啓動JVM時,動態加載一些屬性信息。
import java.util.Properties;
public class SystemDemo
{
/**
* @系統信息 */
public static void main(String[] args)
{
Properties prop=System.getProperties();//獲取系統信息
System.setProperty("mykey","myvalue");//設置自定義的系統信息
String myvalue=prop.getProperty("mykey");//獲取特定的屬性信息
System.out.println(myvalue);
for(Object obj:prop.keySet())
{
String value=(String)prop.get(obj);
System.out.println(obj+","+value);
}
}
}
Runtime對象:每個Java應用程序都有一個Runtime類實例,使應用程序能夠與其運行的環境相連接。可以通過getRuntime方法獲取當前運行時。該類並沒有提供構造函數。說明不可以new對象。那麼會直接想到該類中的方法都是靜態的。發現該類中還有非靜態方法。說明該類肯定會提供了方法獲取本類對象。而且該方法是靜態的,並返回值類型是本類類型。由這個特點可以看出該類使用了單例設計模式完成。
如:Runtime r = Runtime.getRuntime();
Process p = r.exec("winmine.exe");//在引號中可以添加一個文件名,表示由前面的程序執行後面的文件。
P.destroy();//銷燬線程。
Date類:
創建新的date對象:Date d = new Date ();
封裝日期模式:SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日E hh:mm:ss")
調用format方法讓模式格式化指定Date對象:String time = sdf.format(d);
如果要獲取單獨的年月日,可以通過查表法獲取。
Calendar類自定義時間:
Calendar c = Calendar.getInstance();
C.set(2012,02,23);//設置年月日。
向前後推算日期:c.add(Calendar.DAY_OF_MONTH,-18);//負數表示向以前推算,正數表示向以後推算。
import java.util.Calendar;
public class DateDemo2
{
/**
* 單獨獲取時間中的某一項
*/
public static void main(String[] args)
{
Calendar cal=Calendar.getInstance();
cal.set(2012,07,27);//設置的時間不能超過當前時間。
cal.add(Calendar.MONTH, 1);//將某一項屬性向前或向後推指定的量。
//MONTH指示月份的 get 和 set 的字段數字。 這是一個特定與日曆的值。一月對應爲0;
String[] mons={"一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"};
//星期天爲1,爲開始。
String[] weeks={"","星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
System.out.print(cal.get(Calendar.YEAR)+"年");
System.out.print(mons[cal.get(Calendar.MONTH)]);
System.out.print(cal.get(Calendar.DAY_OF_MONTH)+"日");
System.out.print(weeks[cal.get(Calendar.DAY_OF_WEEK)]);
}
}
Math接口:
常用方法:
ceil(16.34);//返回大於指定數據的最小整數。
floor (12.34);//小於指定數據的最大整數。
round(12.54);//四捨五入
獲取隨即0-10整數:int d = (int)(Math.random()*10+1);
方法二:Random r = new Random();
Int d = r.nextInt(10)+1;