JAVA學習第四十五課 — 其他對象API(一),javaapi
一、System類
1.
static long currentTimeMillis() 返回以毫秒為單位的目前時間。
實際上:目前時間與國際標準時間 1970 年 1 月 1 日午夜之間的時間差(以毫秒為單位測量)。
long time = 1414069291407l;//long型 後面加lSystem.out.println(time);
2.
static void exit(int status)終止當前正在啟動並執行 JAVA 虛擬機器。
static void gc()運行記憶體回收行程
3.重點
staticProperties getProperties 確定當前的系統屬性。
import java.util.Properties;import java.util.Set;public class Main {//擷取當前作業系統的分行符號public static final String LINE_SEPARATOR = System.getProperty("line.separator");public static void main(String[] args) {//擷取系統屬性資訊,並儲存到Properties集合中//properties集合儲存的都是String類型的索引值對,包java.util.Hashtable<Object,Object>//最好使用自己的儲存和取出方法來完成元素操作/* Set<String> stringPropertyNames() 返回此屬性列表中的鍵集,其中該鍵及其對應值是字串,如果在主屬性列表中未找到同名的鍵,則還包括預設屬性列表中不同的鍵。 */ Properties pro = System.getProperties(); Set<String> set = pro.stringPropertyNames(); for (String string : set) {String value = pro.getProperty(string);//取鍵得值System.out.println(string+"-:-"+value);} //給系統設定屬性資訊System.setProperty("myname", "xxxxxx");//這些資訊是全域,任何程式都可以調用}}
二、Runtime類
在查看API文檔的時,很清晰的看到,Runtime沒有建構函式(說明無法建立對象),而方法摘要中卻有非靜態方法,其中有一個靜態getRuntime()方法,說明Runtime類是利用了單例設計模式設計的。
import java.io.IOException;public class Main {public static void main(String[] args) throws IOException, InterruptedException {Runtime r = Runtime.getRuntime();//返回一個進程//execute : 執行 xxxx.exe,調用本地一個程式,注意拋異常//r.exec("notepad.exe");//這樣寫會先在當前路徑下找,找不到然後會去pass路徑下找//指定路徑//r.exec("c:\\xxx\\LoL.exe");注意轉移字元r.exec("notepad.exe C:\\HelloWorld.java");//用XX程式解析XXX檔案,注意檔案要匹配Process p = r.exec("notepad.exe");Thread.sleep(1000);//顯示一秒,殺掉,注意拋異常p.destroy();// 殺掉子進程}}
三、Math類
public final class Math
extends Object
注意不能被繼承
Math類涵蓋眾多數學函數,完全可以挑戰所學,Math方法都是靜態
PI 圓的周長與直徑之比 E即自然對數的底數 這兩個不需定義直接
import java.io.IOException;import java.util.Random;public class Main {public static void main(String[] args){double d1 = Math.ceil(11.51);//返回大於參數的最小整數double d2 = Math.floor(11.51);//返回小於參數的最大整數double d3 = Math.round(11.51);//返回四捨五入System.out.println(d1);System.out.println(d2);System.out.println(d3);System.out.println(Math.max(4, 5));System.out.println((int)Math.pow(2, 3));//返回a的b次方for (int i = 0; i < 10; i++) {System.out.println((int)(Math.random()*10));//0-9隨機數//System.out.println(Math.floor(Math.random()*10));}Random ran = new Random();//Random對象//返回下一個偽隨機數,它是取自此隨機數產生器序列的、在 0.0 和 1.0 之間均勻分布的 double 值。 for(int i = 0;i<10;i++){//System.out.println((int)(ran.nextDouble()*6+1));//簡寫形式如下int d = ran.nextInt(6)+1;//nextInt是Random中的方法System.out.println(d);}}}
學習JAVA的過程中,應怎學習API協助文檔,有什好的資料協助學習,我是菜鳥,想用的東西種是找不到,
提起Java內部類(Inner Class)可能很多人不太熟悉,實際上類似的概念在C++裡也有,那就是嵌套類(Nested Class),關於這兩者的區別與聯絡,在下文中會有對比。內部類從表面上看,就是在類中又定義了一個類(下文會看到,內部類可以在很多地方定義),而實際上並沒有那麼簡單,乍看上去內部類似乎有些多餘,它的用處對於初學者來說可能並不是那麼顯著,但是隨著對它的深入瞭解,你會發現Java的設計者在內部類身上的確是用心良苦。學會使用內部類,是掌握Java進階編程的一部分,它可以讓你更優雅地設計你的程式結構。下面從以下幾個方面來介紹:
第一次見面
public interface Contents {
int value();
}
public interface Destination {
String readLabel();
}
public class Goods {
private class Content implements Contents {
private int i = 11;
public int value() {
return i;
}
}
protected class GDestination implements Destination {
private String label;
private GDestination(String whereTo) {
label = whereTo;
}
public String readLabel() {
return label;
}
}
public Destination dest(String s) {
return new GDestination(s);
}
public Contents cont() {
return new Content();
}
}
class TestGoods {
public static void main(String[] args) {
Goods p = new Goods();
Contents c = p.cont();
Destination d = p.dest("Beijing");
}
}
在這個例子裡類Content和GDestination被定義在了類Goods內部,並且分別有著protected和private修飾符來控制存取層級。Content代表著Goods的內容,而GDestination代表著Goods的目的地。它們分別實現了兩個介面Content和Destination。在後面的main方法裡,直接用 Contents c和Destination d進行操作,你甚至連這兩個內部類的名字都沒有看見!這樣,內部類的第一個好處就體現出來了——隱藏你不想讓別人知道的操作,也即封裝性。
同時,我們也發現了在外部類作用範圍之外得到內部類對象的第一個方法,那就是利用其外部類的方法建立並返回。上例中的cont()和dest()方法就是這麼做的。那麼還有沒有別的方法呢?當然有,其文法格式如下:
outerObject=new outerClass(Constructor Parameters);
outerClass.innerClass innerObject=outerObject.new InnerClass(Constructor Par......餘下全文>>
我在學習JAVA誰可以給我一份java api文檔
java.sql 提供使用 JavaTM 程式設計語言訪問並處理儲存在資料來源(通常是一個關係建議自己下個API,網上很多的,自己找找 郵箱?我發給你,1.6的api要