首页 保留字:(所有保留字均为小写)

保留字:(所有保留字均为小写)

举报
开通vip

保留字:(所有保留字均为小写)保留字:(所有保留字均为小写) 淘宝减肥产品排行榜: www.hogoo8.com 保留字::所有保留字均為小寫: 分類 名稱 說明 private 私有,使得方法和變數只能被它自己的類別所存取。 存取修protected 保護,使得方法和變數能夠被同一個封包或其子類別所存取。 飾子 public 公開,使得類別、方法及變數能夠被在其他封包中的類別所存取。 class 類別,為類別定義。 interface 介面,為介面定義。 類abstract 抽象,當方法及類別不能被實體化,將會使得方法必頇被重寫(o...

保留字:(所有保留字均为小写)
保留字:(所有保留字均为小写) 淘宝减肥产品排行榜: www.hogoo8.com 保留字::所有保留字均為小寫: 分類 名稱 說明 private 私有,使得方法和變數只能被它自己的類別所存取。 存取修protected 保護,使得方法和變數能夠被同一個封包或其子類別所存取。 飾子 public 公開,使得類別、方法及變數能夠被在其他封包中的類別所存取。 class 類別,為類別定義。 interface 介面,為介面定義。 類abstract 抽象,當方法及類別不能被實體化,將會使得方法必頇被重寫(overwriten),不能與final同用。 別最終,使得類別不能被繼承,方法不能被覆蓋及變數無法再重新設定初值,不能與abstract、final 方同用。 法extends 繼承,用來表示類別繼承的父類別。 及implements 實現,表示供類別所使用的介面。 變數new 新建,用以呼叫建構元以實體化物件。 的static 靜態,使得方法及變數屬於類別。 特殊synchronized 同步化,表示方法一次只能被一個執行緒所存取。 修native 原生,指出為作業平台:非跨平台:的語言所撰寫的方法。 飾子 strictfp 於方法及類別之前,指出所有表示式的浮點數為根據FP-strict規則。 transient 短暫,保護資料以防被序列化。 volatile 易變,指出該變數可以被非同步性方法所改變,於執行緒中使用。 if else for do while 控switch 制流case 程 default break 中斷,離開所屬的程式區塊。 continue 繼續,會中止剩下為執行的程式碼,並重新開始執行。 return 自方法回傳,不會執行在這個指令之後的程式碼。 instanceof 決定物件是否為類別或任一父類別的實例。 try 嘗試,在區塊內的程式碼會被試著執行,但可能會發生例外。 catch 抓取,宣告區塊內的程式碼是用來處理例外情況。 錯此區塊中的程式碼通常是接在try-catch陳述式之後的,在處理錯誤時,不管程式流程為何,誤finally 處是一定會被執行的程式區塊。 理 throw 在扔出例外給方法,並傳給所呼叫的方法。 throws 指出該方法將會扔出例外給呼叫它的方法。 封package 封包,原始程式中明確的指出類別所屬的封包。 包控import 載入,為載入封包及類別的指令。 制 boolean 布林值原義值。 true 或 false char 字元,儲存一個全球統一碼的字元。 \u0000(0) , \uFFFF (65535) byte 8-bit的整數。 基short 16-bit的整數。 本型int 32-bit的整數。 別 long 64-bit的整數。 -9223372036854775808 , 9223372036854775807 float 32-bit的浮點數。 double 64-bit的浮點數。 super 為參考變數指向最接近的父類別。 變數this 為參考變數指向目前物件實體。 關鍵字 void 表示方法並沒有回傳型態。 const 不能使用於宣告常數,宣告常數必頇使用public static final。 未使用 goto Java語言並沒有goto的用法。 宣告: public abstract class MyClass extends A implements B,C {} 宣告順序: 1. 存取修飾子public :選擇性,可以放在final/abstract之後: 2. 特別修飾子final , abstract:選擇性,不可共用: 3. 關鍵字class 類別(Class) 4. 類別名稱:識別字: 5. extends 指定所繼承的類別:選擇性,*若沒指定java會自動繼承Object類別,傴可繼承一個類別: 6. implements 指定所實作的介面:選擇性,可實作多個介面: 7. {} public abstract interface MyInterface extends A,B {} 宣告順序: 1. 存取修飾子public :選擇性: 2. 特別修飾子abstract:選擇性,不可用final因為介面本身就是要被繼承時作的: 3. 關鍵字 interface 4. 介面名稱:識別字: 介面(Interface) 5. extends 指定所繼承的介面:選擇性,可繼承多個介面,介面無法實作implement介面: 6. {} *注意: , 介面中的方法不具備功能實作部分,故定義時,原{}以();取代 , 介面中的變數隱含設定為public static final,必頇設定初值,故視為常數 public static final synchronized double MyMethods(int A,double B) throws Exception {} 宣告順序: 1. 存取修飾子public , private , protected 或none:預設: 2. 特別修飾子abstract , final , native , static 或synchronized:選擇性: 3. 回傳值型態 資料型態:基本型態或物件型態:或不傳回值 4. 方法名稱:識別字: 5. 傳遞至方法的參數定義於小括號()內:可以不指定或定義多個參數,參數為該方法區域變數: 6. 丟出例外:選擇性: 7. {} 方法(Methods) 主方法(main): , 主方法必頇宣告成public static,而主方法使用的方法和變數都必頇為static , 主方法必頇有String [] 參數,稱為命令列參數 建構元方法(constructor): , 永遠為第一個被呼叫的方法,如果類別中沒有建構元,會使用父類別的預設建構元 , 建構元名稱與類別名稱相同 , 建構元沒有回傳值 , 建構元不能像其他超類別方法可以自父類別所繼承 , 建構元方法的修飾子不能為abstract , synchronized 或是static , super()指令必頇在建構元方法的第一行,且只能出現在一個建構元方法 A; public static final int 宣告順序: 1. 存取修飾子public , private , protected或none:預設: 2. 特別修飾子final , static , transient 或volatile:選擇: 3. 變數資料型態 包括基本型態和物件型態 變數(Variable) 4. 變數名稱:識別字: 5. ; *注意: , 區域變數:方法內宣告的變數:只能使用final,且其值只能被設定一次 , 不可使用synchronized , abstract 或native 未初始化和預設值: 所有基本型別都會指定預設值 基本型別 byte , int , short , long , float , double為0 boolean為false,char為\u0000代表空白 實體變數 :類別階層: 物件 未初始化時,可通過編譯,但執行錯誤,其值為null 未初始化時,跟一般物件一樣,其值為null 陣列 初始化時,陣列中的物件會指定為null,基本型別會指定預設值 所有區域變數在使用前都必頇先初值化,否則無法通過編譯 基本型別 但宣告卻沒有使用,即使未初值化,也是合法的 區域變數 未初始化時,無法通過編譯 :方法階層: 物件 可將物件設定為null初值化,以通過編譯 陣列 陣列中的基本型別會指定預設值,物件會指定為null 存取控制::1.建立類別實體2.繼承類別3.存取類別的方法及變數::類別本身無法存取其類別成員也無法存取: 預設類別 只能被同一個封包的其他類別所存取:建立或繼承: 公開類別(public) 能被所有封包的其他類別所建立或繼承 類別 最終類別(final) 可被建立,不能被繼承 抽象類別(abstract) 不能被建立,可被繼承 修飾子 相同封包 不同封包 相同封包的子類別 不同封包的子類別 可 可 可 可 public 可 不可 可 可 protected 可 不可 可 不可 default 不可 不可 不可 不可 private 抽象方法 只宣告不實作程式碼,擁有抽象方法其類別必宣告為抽象類別 類最終方法 防止被子類別所覆寫 別方法 靜態方法 類別未建立之前就可以呼叫使用,只能存取靜態方法或靜態變數 同步性方法 同一時間只能被同一個執行緒所存取 成 原生方法 略 員 靜態變數 類別未建立之前就可以呼叫使用,可被非靜態方法存取 實體變數 可被所有方法存取,不能被靜態方法所存取 區域變數 只可使用final,不能被其他方法所使用 變數 最終變數 設定初值後,就不能重新設定,final實體變數不會設定初值 Transient變數 略 Volatile變數 略 預設建構元: , 預設建構元是用來呼叫父類別未含參數的建構元 , 假如父類別具有帶參數的的建構元或沒有未含參數的建構元,將不會在子類別建立預設建構元 , 如果自行建立建構元方法,將不會建立預設建構元 , 即使未使用super()呼叫父類別建構元,但未含參數的父類別建構元仍舊會被執行 合法回傳型態: 布林值 true或false boolean 字元 字元原義值,不能為單一字元的字串,可回傳整數值範圍為0~65535 char byte byte byte , short short 整數 整數預設值為int byte , short , int , char int byte , short , int , long , char long byte , short , int , long , char , float float 浮點數 浮點數預設為double byte , short , int , long , char , float , double double 物件 可回傳相同類別型態的物件或子類別,可宣告介面為回傳型態,可回傳null 運算元: 運算元種類 對象 結果 備註 指定運算元 物件變數 物件實體 =, *=, /=, %=, +=, -=, <<=, 基本型態變數 基本型態 >>=, >>>=, &=, ^=, |= 比較運算元 整數,浮點數,布林值 字元可和整數比較 字元 >, >=, < , <= , 決定物件是否屬於某個已知類別:或任何父類別: , 不可使用基本型態,會編譯錯誤 instanceof運算元 物件變數 布林值 , 不可比較非為同一組類別階層的類別 , 可使用null比較 , 不允許比較不同型態,如布林值和整數,但浮點整數,浮點數,相等運算元 數可和整數比較 字元,布林值,布林值 , 基本型態為比較值是否相同 == , != 物件變數 , 物件變數為比較參考位址是否為同一物件 數學運算元 , +可當作字串結合運算元 整數,浮點數 整數,浮點數 , 後序方式遞增優先權高於前序方式遞增 +, - , *, /, %, ++, -- 位移運算元 , 以bit方式位移 整數 整數 , >>位移會保留原本的符號位元 >>, << , >>> Bitwise運算元 整數,布林值 整數,布林值 &, |, ^ 邏輯運算元 布林值 布林值 && , || 位元反轉運算元 ~ 整數 整數 條件運算元 假如運算式結果為真,則指定左邊的值;為假,則布林值運算式 數值 指定右邊的值 ?: , 執行時期是合法的 隱含轉換 , 小,大,子類別參考變數指定給父類別參考變數,範圍視野變大 轉換(Casting) , 執行時期可能會產生類別轉換例外 強制轉換 , 大,小,父類別參考變數指定給子類別參考變數,範圍視野變小 equals()方法: , 是所有物件都擁有的方法,因為定義在Object物件內 , 當該方法沒有被覆寫時,與相等運算元==用法相同,用來比較兩個物件變數是否相同 , 當該方法被覆寫時,用來比較兩個物件的屬性:內容,值: 傳遞變數至方法: , 基本型別資料傳遞至方法的方式是傳值(passed by value) , 物件傳遞至方法的方式是傳參考(passed by reference) 流程控制: 流程名稱 運算式結果型態 備註 布林值 else子句最可能歸屬於最內部的if敘述 if - else , 不能使用基本型別long,只可以使用隱含轉換為int基本型別的型態 , 狀況標籤(case label)可為常數:也就是final變數: switch - case - byte , short , int , char , 只能有一個default,case敘述中的狀況值不能重複 default , 只能處理相等運算 布林值 迴圈中使用的變數在運算式執行前都必頇先被宣告 while 布林值 while敘述後要加上分號 do - while , 分三部分:宣告和初始化變數,定義關係運算式,重複運算式 , 可宣告多個相同型態的變數,以逗點分隔 布林值 for , 三部分相互獨立,不需使用相同變數 , 重複運算式可以是一個獨立的java指令 未帶標籤 停止目前迴圈或switch,並繼續執行該目前迴圈之後的程式碼 用於switch , while , break 帶標籤 停止標籤迴圈或switch,並繼續執行該標籤迴圈之後的程式碼 do , for , if 停止目前迴圈所剩下的程式碼,檢查條件式如仍舊滿足,會繼未帶標籤 續執行目前迴圈的下一個循環 用於while , do , for continue 停止標籤迴圈所剩下的程式碼,檢查條件式如仍舊滿足,會繼帶標籤 續執行標籤迴圈的下一個循環 例外處理:(java.lang.Throwable) , 例外(exception)是指發生某個錯誤而導致程式碼無法執行。 , 例外類別階層: 檢查例外 Exception Object Throwable 非檢查例外 Error RuntimeException , 檢查例外必頇於方法中指定捕捉:try – catch – finally:或是宣告指定:throws:,否則無法通過編譯。 , try區塊為監視發生例外的區域,catch區塊用來對應所指定的例外類別,catch必頇緊跟著try。 , finally區塊為最後一定會執行,如果try中有return敘述,會先執行完finally再執行return敘述。 , try後面必頇有catch區塊或finally區塊兩者其中一個。 , 若於目前執行的方法未能捕捉例外時,會將例外往上傳遞至堆疊的前一個方法,直到例外被捕捉或到堆疊頂 端由JVM處理。 , 假如catch區塊指定捕捉的例外類別有子類別的話,也會捕捉到子類別產生的例外物件。 , 子類別例外的catch子句必頇置於父類別例外的catch子句之前,否則無法通過編譯。 , 覆寫(override)方法時,宣告指定:throws:的例外類別必頇為被覆寫方法的例外類別的子類別:可多個:、 相同類別或不指定例外類別。 , 例外的filllnStackTrace()方法將會改變堆疊追蹤記錄,將堆疊底部改為目前執行的方法。回傳型態為 Throwable。 , 可以使用throw在程式任何地方丟出例外實體。 記憶體回收:garbage collection:: , 大部分的JVM都是使用標示—清除:mark-sweep:來實作記憶體回收的機制。 , 記憶體回收機制不能確保提供足夠的記憶體,也無法節省記憶體,只盡可能有效率的空管可利用的記憶體。 , 記憶體回收動作執行時,JVM會中斷所有的程序:process:。 , JVM會盡量延遲記憶體回收的時間,但記憶體回收的動作會在任何時點發生。 , 記憶體取得—回收: 1. new敘述 --- 取得記憶體,並傳回參考(references) 2. 使用中 --- 不符合回收條件,回收機制標示(mark) 3. 不再使用 --- 符合回收條件,回收機制不標示 4. 執行終結元 --- 執行清除資源動作及呼叫父類別的終結元(finalizer) 5. 回收記憶體 --- JVM自由決定清除(sweep)的時點 , 符合回收的條件為移除物件上最後一個參考,亦即沒有任何參考點數指向該物件。 , 移除方式為將參考變數設定為null或是設定指向另一個物件。 , 任何有效的執行緒是無法符合記憶體回收條件的,除非執行緒中斷。 , 方法內的區域變數,當方法執行完畢時即符合記憶體回收條件。但方法回傳(return)的物件,因被呼叫方法 的變數所參考,所以無法符合記憶體回收條件。 , Runtime的實例必頇使用Runtime.getRuntime()取得,Runtime沒有建構元所以無法使用new敘述取得。 , Runtime.gc()或System.gc()會請求JVM執行記憶體回收動作,但不保證一定會遵守。 , Runtime.runFinalization()或System.runFinalization()會請求記憶體回收器執行終結方法,不一定接受請求。 超載?覆寫執行時期型態與物件導向: , 封裝的目標有二:為模組化和適當的存取視界。 , 封裝的好處:容易維護,具有可延伸及重複使用的特性,程式碼容易解讀。 繼承另一個類別。第一個類別是否為第二個類別的其中一種類型。 is a 使用另一個類別。第一個類別是否包含一個或一個以上的第二個類別。 has a , 根據參數列決定 , 在同一類別中定義相同名稱的方法:可能多個: , 方法的參數列不能相同 超載(overload) , 回傳型態,存取子,定義的例外及其他修飾子都不是超載的判定條件 , JVM會自動挑選最接近參數值的超載方法 , 呼叫方法所傳遞的參數型態,必頇能夠判定對應那個超載方法,否則無法編譯 , 根據物件決定 , 子類別具有父類別相同名稱的方法:只有一個: , 方法的參數列,回傳型態必頇相同 覆寫(overridden) , 存取子必頇與父類別相同或是更公開,否則無法編譯 , 定義的例外必頇與父類別的例外相同,或為子類別,也可以不繼承父類別的例外 , 父類別與子類別可各自獨立宣告synchronized修飾子 , 呼叫同一類別中的建構元 , 必頇置於建構元的第一行 this() , 不能和super()同時使用 , 呼叫父類別中的建構元 , 必頇置於建構元的第一行 , 子類別中的建構元都會自動呼叫未帶參數的父類別建構元,除非已有指定呼叫父類別其他super() 帶有參數的建構元 , 如果子類別需要,但父類別為提供未帶參數的建構元,將會無法編譯 , 不能和this()同時使用 內部類別:Inner Class:: , 內部類別的名稱不可以和外圍類別的名稱相同 , 產生的檔案名稱:外圍類別名稱,內部類別名稱.java 靜態內部類別 , 不需要外圍類別的實例 類:Static Inner Class: , 只能存取外圍類別的靜態成員 別階, 產生的檔案名稱:外圍類別名稱,內部類別名稱.java 成員內部類別 層 , 需要外圍類別的實例,要先建立外圍類別的實體再建立內部類別的實體 :Member Inner Class: , 可以存取所有外圍類別的成員,不能定義靜態成員 , 產生的檔案名稱:外圍類別名稱,內部類別名稱.java 方, 不需外圍類別實例 區域內部類別 法, 不能使用public , private , protected , static修飾子 階:Local Inner Class: , 能存取外圍類別實體變數和方法或final的外圍類別區域成員,不能定義靜態成層 員 , 產生的檔案名稱:最外層的外圍類別名稱,(數字自動編排).java , 不需外圍類別實例 , 使用new來建立匿名內部類別,在new類別後,緊接跟著一組大括號 , 不允許使用任何修飾子和class , extends , implements關鍵字 匿名內部類別 , 因為無類別名稱,無法定義建構元。使用簡易初始區塊或實例初始區塊。 , 能存取外圍類別實體變數和方法或final的外圍類別區域成員,不能定義靜態成 員 執行緒:Thread::(java.lang.Thread、java.lang.Runnable) , 執行緒在系統裡為單一連續的流程控制,同一時間每一個執行緒都是獨立的 , 建立執行緒的兩個方法:繼承執行緒類別或是實作Runnable介面 定 義:public class MyThread extends Thread {} 繼承Thread 實體化:MyThread testThread = new MyThread(); 啟 動:testThread.strat(); 定 義:public class MyRunnable implements Runnable {} 實體化:MyRunnable firstRunnable = new MyRunnable(); 實作Runnable Thread testThread = new Thread(firstRunnable); 啟 動:testThread.strat(); , 還可以繼承其他類別,也可以為多個執行緒所使用 , 執行緒程式撰寫在public void run()方法中 , run()方法無宣告指定任何例外,所以必頇捕捉檢查例外,否則無法編譯 , 一個執行緒只能呼叫start()方法一次,如重複呼叫會產生例外 , 執行緒狀態的專有名詞: , New thread 建立:指當剛建立執行緒,但還未執行start()方法的狀態。 , Runnable 預備:指準備執行的狀態,執行緒排程器還沒為其配置CPU執行時間。 , Running 執行:只執行緒排程器為執行緒配置CPU執行的時間。 , Waiting/blocking 等待/阻塞:只執行緒再等待某些事件的發生。 , Dead 終結:只執行緒執行完畢,終結的執行緒是不能再度被啟動的。 Waiting / blocking New Runnable Running Dead 狀態轉換 Running ? Waiting/blocking public static void sleep(long millis) throws InterruptedException 使執行緒暫停執行指定的毫秒數,但沒有釋放物件的鎖定 狀態轉換 Waiting/blocking ? Runnable public void interrupt() 中斷執行緒,使執行緒提早甦醒,並設定中斷標記。被設定中斷標記的執行緒 將永遠無法進入等待狀態。等待I/O的阻塞狀態不能被中斷 public static boolean interrupted() 檢查執行緒擁有的中斷狀態,會自動清除中斷標記 public boolean isInterrupted() 檢查另一個執行緒是否中斷,不會影響中斷標記 狀態轉換 Running ? Waiting/blocking public final void wait() throws InterruptedException 讓鎖定該物件的執行緒轉到等待狀態並釋放該物件的鎖定 狀態轉換 Waiting/blocking ? Runnable public final void notify() 通知一個等待該物件的執行緒,並取得該物件鎖定 狀態轉換 Waiting/blocking ? Runnable public final void notifyAll() 通知所有等待該物件的執行緒,將只有其中一個取得該物件鎖定繼續執行。其 他未取得物件鎖定的執行緒,將處於準備狀態,不需另行通知 狀態轉換 Running ? Runnable public static void yield() 讓目前執行的執行緒暫時離開執行狀態 synchronized方法或區塊,需取得物件的鎖定。當物件被鎖定時,其他任何的執行緒都無法存取該物件,直, 到移除鎖定:結束synchronized方法或區塊:為止。 , 當任何一個執行緒想要取得已被其他執行緒鎖定的物件時,該執行緒會從執行狀態轉換為阻塞狀態。 , 死結通常發生於取得物件的鎖定,兩個執行緒互相等待對方物件的鎖定。 java.lang.Math類別: , java.lang封包中的類別會自動載入,故不需額外撰寫import的敘述 , Math類別中的所有方法都是靜態方法:static method:,所以不必建立實例即可呼叫使用 , Math類別的建構元是私有的:private:,所以無法使用new敘述建立實例 , Math類別是定義成final,所以無法被繼承 , 傳回值為參數值的絕對值 public static int abs(int a) , 參數值若為Integer.MIN_VALUE或是Long.MIN_VALUE回傳值會public static long abs(long a) 小於0,即最小範圍的負數 public static float abs(float a) , 參數值若為Float.MIN_VALUE或是Double.MIN_VALUE回傳值為public static double abs(double a) 最小的正數 , 回傳值為 >= 參數的最小整數 public static double ceil(double a) , 雖是回傳最小整數,但回傳型態為double , 回傳值為 <= 參數的最大整數 public static double floor(double a) , 雖是回傳最大整數,但回傳型態為double public static int max(int a,int b) public static long max(long a,long b) 比較兩個參數值,回傳比較大的參數值 public static float max(float a,float b) public static double max(double a,double b) public static int min(int a,int b) public static long min(long a,long b) 比較兩個參數值,回傳比較小的參數值 public static float min(float a,float b) public static double min(double a,double b) 回傳 >=0.0 以及 <1.0 之間的浮點數,不需要傳入參數 public static double random() , 回傳值為最接近參數的整數,亦即做四捨五入 public static int round(float a) , 注意當參數為負數時,四捨五入所得的值 public static long round(double a) , 參數型態為float或double,但回傳型態為int或long , 計算三角函數值 public static double sin(double a) , 參數值代表的是弧度:由角度換算的: public static double cos(double a) , public static double toRadians(double angdeg)參數值為角度,回傳值public static double tan(double a) 為弧度 , 計算浮點數的平方根 public static double sqrt(double a) , 如參數值為負數,回傳值為NaN 字串物件::java.lang.String、java.lang.StringBuffer: String MyString = “test”; 或 String MyString = new String(“test”); , 字串物件通常用來代表字串原義值,而字串原義值會自動被實作為String類別的實例 , String物件的內容是無法改變的 , 對所有String物件的修改動作,都是回傳另一份新的字串物件 , String物件如果出現在運算元+的其中一邊,則回傳值會是字串,非String物件會呼叫toString() 方法 , 編譯時期,擁有相同字串原義值的字串變數會配置同一份字串,指向同一個記憶體空間 String , 執行時期,產生相同字串原義值的字串變數會配置不同份字串,指向不同的記憶體空間 類別 比較兩個物件的內容是否相同,會區分大小寫 public boolean equals(Object anObject) 比較兩個物件的內容是否相同,忽略大小寫 public boolean equalsIgnoreCase(String anString) 比較兩字串的大小,從字串的第一個字元開始比public int compareTo(String anString) 較,大時傳回直為正數,小時傳回值為負數,相 同時傳回值為0 將所有大寫文字轉換成小寫文字,如原本字串本public String toUpperCase() 來就是小寫,將回傳原字串物件 將所有小寫文字轉換成大寫文字,如原本字串本public String toLowerCase() 來就是大寫,將回傳原字串物件 回傳字串中特定的字元,位置從0開始 public char charAt(int index) 回傳原字串的一部份內容值,從指定位置到字串public String substring(int beginIndex) 結束的所有字元 回傳原字串的一部份內容值,從第一個參數值到public String substring(int beginIndex, int endIndex) 第二個參數值之前的字元 尋找字串中的特定字元,從位置0開始 public int indexOf(int ch) 回傳值為第一個找到該字元的索引值位址 public int indexOf(int ch, int fromIndex) 找不到,則回傳值為-1 public int indexOf(String str) 會區分大小寫 public int indexOf(String str, int fromIndex) 同indexOf,但從字串的最後往前尋找 public int lastIndexOf(int ch) 判斷是否由特定的文字開始 public boolean startsWith(String prefix) 移除字串前後的空白,但會保留文字之間的空白 public String trim() StringBuffer MyString = new StringBuffer(“test”); , StringBuffer的內容是可以改變的,可新增刪除插入 , StringBuffer在初始化時頇指定確定的容量,假如容量不夠時,會自動擴充容量,預設容量為16 個字元 , StringBuffer為thread-safe,代表StringBuffer的方法受到synchronized(同步)的保護 目前配置的容量:要加上預設的16個字元: public int capacity() StringBuffer 反轉StringBuffer物件的內容 public StringBuffer reverse() 類別 改變特定位置字元的內容,位置從0開始 public void setCharAt(int index, char ch) 在原本的內容後面加上一串文字 public StringBuffer append(Object obj) 在特定位置上插入另一段文字 public StringBuffer insert(int offset, Object obj) 在特定位置上刪除一段文字,從開始參數到結束public StringBuffer delete(int start, int end) 參數之前的位置 目前內容的長度:不包含預設的16個字元: public int length() 集合架構:(java.util.Collection) , 集合(collection)為儲存一群資料的概念,儲存其他物件 , 集合只能儲存物件,若想將基本型別資料加入集合,就必頇使用資料型別的類別物件,如:Ineger , 集合的四個特性: , 排序(Sorted) ? 使用物件的equals()方法,做為遞增自然排序的方式 , 次序(Ordered) ? 該集合為具備特有的順序性,以決定物件在集合中放置的位置 , 允許重複(Allows Duplicates) ? 在集合中出現重複的物件 , 使用key(use Key) ? 使用Key物件來參考真正儲存資料的物件 Collection LinkedList HashMap Vector HashSet Hashtable ArrayList (Set) (Map) (List) TreeSet TreeMap (SortedSet) (SortedMap) , 成員唯一不允許重複 , 使用equals()方法來檢查加入的物件是否重複 Set , 可加入null,但只能有一個 , 遞增排序,成員唯一不允許重複 , 成員不允許為null SortedSet , 成員必頇實作Comparable,或是要能接受指定的Comparable介面 , 成員必頇為相同型態的物件 , 特定的次序儲存,允許重複的物件 , 可利用索引值,指出特定的成員物件 , LinkedList是以佇列(queue)方式儲存,即先進先出 List , Vector 為可擴充的物件陣列 , ArrayList 和Vector一樣,但不支援同步化 , 會定義唯一的Key但可以儲存重複的物件 , HashMap 支援同步性及允許儲存null Map , 不能使用基本型別當key,只可以使用物件 , 遞增排序,會定義唯一的Key但可以儲存重複的物件 , 不能使用基本型別當key,只可以使用物件 , Key不允許為null SortedMap , Key必頇實作Comparable,或是要能接受指定的Comparable介面 , Key必頇為相同型態的物件 基礎元件::java.awt封包: , AWT 抽象視窗工具:Abstract Window Toolkit: , AWT的類別階層: 容器 版面配置管理員 Component LayoutManager TextComponent Container Button LayoutManager2 Canvas Checkbox TextArea TextField Scrollpane Window Panel Choice GridLayout Label FlowLayout List BorderLayout Dialog Dialog Frame ScrollBar GridBagLayout CardLayout FileDialog , Component抽象類別: 視覺AWT的基本類別,還包含Container 提供的功能用來定義AWT元件的外觀,以及回應各式的事件,描繪本身的用法 方法 說明 , 設定或取得目前元件的前景(Foreground)或背景Background)顏色 public void setForeground(Color c) , 方法參數,方法回傳值為Color物件 public void setBackground(Color c) , 如果沒有設定元件的前景或背景顏色,則會使用所屬容器:父元件:public Color getForeground() 的顏色 public Color getBackground() , 設定或判斷元件為有效或無效、可見或不可見 public void setEnabled(boolean b) , 有效時,可為使用者操縱並產生事件;無效時,會呈現灰色無法作用 public boolean isEnabled() , 可見時,會出現在畫面上:必頇所屬元件也是可見的:;不可見時,則public void setVisible(boolean b) 會把該元件隱藏起來 public boolean isVisible() , 方法參數,方法回傳值為布林值 , 設定或取得元件的字型 public void setFont(Font f) , 方法參數,方法回傳值為Font物件 public Font getFont() , 如果沒有設定元件的字型,則會使用所屬容器:父元件:的字型 , 設定或取得元件的大小 public void setSize(Dimension d) , 方法參數,方法回傳值為Dimension物件,設定時也可使用int參數 public void setSize(int width, int height) public Dimension getSize(Dimension rv) public Dimension getSize() , 取得元件的偏好的大小,指元件最低限度所需要的大小 public Dimension getPreferredSize() , 回傳值為Dimension物件 , 設定或取得容器內的元件的位置 public void setLocation(Point p) , 方法參數,方法回傳值為Point 物件,設定時也可使用int參數 public void setLocation(int x, int y) public Point getLocation(Point rv) public Point getLocation() , 同時設定或取得元件的大小與位置 public void setBounds(Rectangle r) , 方法參數,方法回傳值為Rectangle 物件,設定時也可使用int參數 public void setBounds(int x, int y, int width, nt height) public RectanglegetBounds(Rectangle rv) public Rectangle getBounds() 由作業系統所呼叫,顯示視覺元件的外觀 public void paint(Graphics g) 可以由應用系統直接呼叫,會使系統重繪該元件 public void repaint() , 呼叫reprint()方法時,會自動呼叫updata方法。 public void update(Graphics g) , 一般為了減少元件重繪時產生的閃爍,會覆寫updata方法,在此方 法中呼叫print()方法 子類別種類 類別簡述 用來提供使用者點選以觸發某種行為的元件 Button 沒有預設外觀或行為的元件,可做為影像或圖形的展示區 Canvas 可做為選取或不選取的切換,或是為核取群組的一部份 Checkbox 下拉選單的選擇清單,呼叫add()方法加入選項 Choice 用來容納其他元件的元件 Container 為標示文字於畫面的元件,使用setText()和getText()方法改變或取得Lable Lable的內容 用來在螢幕上顯示文字清單,於建構元中可設定是否允許同時選擇多List 個項目,使用add()和remove()方法加入或移除List上的項目 可用滑鼠點選滾輪與箭頭按鈕之間的空白區域或是拖曳滾輪 Scrollbar 提供編輯一行文字 TextField TextComponent 提供編輯多行文字,可使用呼叫Scrollbar參數的建構元 TextArea , 容器Container類別: 可以用來容納其他的元件 可以再設定其他想要的版面配置管理員,使用setLayout()設定版面配置管理員 方法 說明 將其他元件加入容器 public Component add(Component comp) public Component add(Component comp, int index) public void add(Component comp, Object constraints) public Component add(String name, Component comp) public void add(Component comp, Object constraints,int index) 設定或取得目前容器使用的版面配置管理員 public void setLayout(LayoutManager mgr) public LayoutManager getLayout() 從容器裡取出指定特定的或所有的元件 public Component getComponent(int n) public Component getComponentAt(int x, int y) public Component getComponentAt(Point p) public Component[] getComponents() 從容器移除特定或所有的元件 public void remove(int index) public void removeAll() 取得容器的Inset物件,用來指定容器與視窗之間的public Insets getInsets() 邊界大小 代表重新計算元件的配置 public void validate() 子類別種類 類別簡述 預設版面配置管理員 , 面版一般是附加在另一個容器上 FlowLayout Panel , Applet是Panel的子類別,但是歸屬java.applet 可以透過捲動軸來取得當版面不夠時,所無法看見的區域 ScrollPane , 沒有任何裝飾的容器,像是邊框及功能列 BorderLayout Window , Window及其子類別為最外層容器 , 具有邊框,標題,選單的容器 BorderLayout Frame , 為Window的子類別,故也為最外層容器 , 版面配置管理員LayoutManager介面: 用來負責規劃元件在容器中的大小及位置 版面配置管理員和容器是結合在一起的,容器會持有版面配置管理員的參考 類型 說明 所屬容器改變大小時 , 會忽略每一個元件的偏好大小,使每個元件的大小相同佔滿整個GridLayout 格子 , 依序置於容器內,由左至右 會依比例改變元件大小 , 可以在執行建構元或是使用setRows()以及setColumns()來指定表 格的欄數及列數 , 會保持每一個元件所偏好的大小 會依元件大小重新排列FlowLayout , 次序是由左至右,水平置中對齊 位置 , 分為五個區域:NORTH,SOUTH,EAST,WEST,CENTER NORTH或SOUTH會改BorderLayout , NORTH或SOUTH會保持元件高度,但會更改寬度大小以填滿變寬度大小 容器的寬度 EAST或WEST會改變 , EAST或WEST會保持元件寬度,但會改變高度大小以填滿容器高度大小 的高度 CENTER會改變元件大 , CENTER會改變元件大小,以填滿剩下的空間 小 , 可以動態的設定格子的大小,元件不一定大小相同,可以橫跨一GridBagLayout 個以上的列數及欄數,但仍會填滿所屬的格子 會依比例改變元件大小 , 要使用限制物件GridBagConstraints來設定限制的條件 , 將元件視為卡片,在同一個時間只能看見某一張卡片內的元件 CardLayout 不會改變 , 最先加入的元件,會最先顯示 , 使用絕對位置來配置元件的位置 null 不會改變 , 會保持元件所偏好的位置及大小 MenuComponent MenuContainer MenuItem MenuBar CheckboxMenuItem PopupMenu Menu , 選單MenuComponent抽象類別: MenuBar和Menu同時也實現MenuContainer介面,視為容器可以容納其他選單元件 只要可以包含選單元件的物件都會實作這個MenuContainer介面,如:Frame、Component等,故Frame可以加 入MenuBar元件 方法 說明 取得選單元件的字型,參數及回傳值為Font物件 public void setFont(Font f) public Font getFont() 設定或取得選單元件的名稱,該值並非顯示於選單元件上的文字 public void setName(String name) public String getName() 取得選單元件的父元件,意即所屬的上層容器 public MenuContainer getParent() 子類別種類 類別簡述 , 用來容納選單(Menu),使用setMenuBar()方法加入MenuBar , 假如選單列(MenuBar)沒有包含任何選單,就無法顯示在畫面上 MenuBar , 使用add()方法將Menu加入MenuBar,排列順序為由左至右 , Menu繼承MenuItem,所以Menu還可以再包含另一個Menu , add()和insert()方法,將選單項目(MenuItem)或是字串加到選單裡,insert()Menu 方法可接受索引值指定加入的位置 , addSeparator()方法為設定分隔線 , 所有選單的項目必頇為選單項目(MenuItem)或其子類別 MenuItem , 繪圖Graphics抽象類別: 提供所有基本的繪圖方法 方法 說明 繪製或填滿矩形 public void drawRect(int x, int y, int width, int height) public abstract void fillRect(int x, int y, int width, int height) , 繪製或填滿圓角矩形 public abstract void drawRoundRect(int x, int y, int width, , arcWidth是圓弧的水平直徑 int height, int arcWidth, int arcHeight) , arcHeight是圓弧的垂直直徑 public abstract void fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) , 繪製或填滿3-D效果的矩形 public void draw3DRect(int x, int y, int width, int height, , 光源從左上角射下來,如果x,y,width,height相同的boolean raised) 話,就沒有3-D效果 public void fill3DRect(int x, int y, int width, int height, , raised決定矩形向上突起或向下凹陷 boolean raised) , 繪製或填滿弧形 public abstract void drawArc(int x, int y, int width, int height, , startAngle為啟始角度,0度是在3點鐘的方向 int startAngle, int arcAngle) , arcAngle為繪製角度,為負數代表以順時針方向,public abstract void fillArc(int x, int y, int width, int height, 正數代表以逆時針方向 int startAngle, int arcAngle) 繪製或填滿橢圓形 public abstract void drawOval(int x, int y, int width, int height) public abstract void fillOval(int x, int y, int width, int height) , 繪製或填滿閉合的多邊形 public abstract void drawPolygon(int[] xPoints, int[] yPoints, , nPoints代表線段的總數目 int nPoints) , 會自動將第一個點和最後一個點相連接 public abstract void fillPolygon(int[] xPoints, int[] yPoints, int nPoints) , 繪製一連串相連的線段 public abstract void drawPolyline(int[] xPoints, int[] yPoints, , nPoints代表線段的總數目 int nPoints) , 如果第一點和最後一點相同,就類似drawPolygon() 繪製一條線 public abstract void drawLine(int x1, int y1, int x2, int y2) 繪製文字 public abstract void drawString(String str, int x, int y) , 設定或取得繪製的顏色 public abstract void setColor(Color c) , 參數及傳回值為Color物件 public abstract Color getColor() 事件處理::java.awt封包: , 事件處理機制的程序為:將產生的事件組成物件,然後使用方法將此物件傳遞到另一個物件 , 組成事件處理機制的三個物件: , 事件來源(event source) , 事件物件(event object) , 一至多個事件監聽者(event listener) , 所有的事件類別:事件物件或事件監聽者:都是java.util.EventObject的子類別 , java.awt.event封包的類別繼承於java.awt.AWTEvent,java.awt.AWTEvent類別繼承java.util.EventObject , 事件來源: , 指的是產生事件的元件或物件 , 可以是任何型態的物件 , 負責的三項任務: , 提供加入及移除事件監聽者的方法 , 負責一系列所感興趣的事件監聽者 , 建立以及傳送適當型態(類別)的事件物件給所感興趣的監聽者 , 事件物件: , 收集特定事件型態的相關資訊 , 會記錄產生事件的物件參考,意即事件來源 類別名稱 事件發生的時點 , 當用滑鼠在List元件上連按兩下 , 當按下Button時 ActionEvent , 當選擇Menu時 , 在TextField元件按下ENTER按鈕時 , 當改變TextField元件的文字內容時 語TextEvent 意, 當改變TextArea元件的文字內容時 型, 當勾選或取消勾選Checkbox元件的選擇時 事件, 當勾選及取消勾選CheckboxMenuItem元件上的選項時 ItemEvent , 當選擇Choice元件上的選項時 , 當選擇List上的選項時 , 當ScrollBar元件的捲動軸位置改變時 AdjustmentEvent , 當ScrollPane元件的捲動軸位置改變時 當元件的大小、位置以及顯示狀態有所改變時 ComponentEvent 在Container元件上加入元件或移除元件時 ContainerEvent 當元件取得駐點或是失去駐點時 FocusEvent 為MouseEvent以及KeyEvent的父類別 InputEvent 需要先取得輸入焦點和按下按鍵, KeyEvent , 當滑鼠游標於元件的上方按下滑鼠按鍵 , 當滑鼠游標於元件的上方放開滑鼠按鍵 低, 當滑鼠游標於元件的上方點選一下:即按下和放開: 階MouseEvent 事, 當滑鼠游標進入或是離開元件的邊界時:顯示該元件的提示資料: 件 , 當滑鼠游標移動於元件的上方 , 當滑鼠游標移動於元件的上方:此時按著滑鼠上的按鍵不放: , 當視窗即將關閉時 , 當開啟視窗或關閉視窗時 WindowEvent , 當視窗發生作用(avtivated)及閒置(deactivated)時 , 當視窗縮小成圖示,或圖示還原成視窗時 執行緒內部連續繪製元件時 PrintEvent , 事件監聽者: , 必頇在事件來源上訂閱(註冊)監聽物件 , 必頇實作適合的監聽者介面,覆寫所有的方法 , 每一個特定的監聽者介面都至少會定義一個方法 , 改編者類別(Adapter classes): , 為實現特定的監聽者介面,以方法內容留空的方式實作監聽者介面 , 只需覆寫所需要的方法 事件物件類別 監聽者介面 改編者類別 ActionEvent ActionListener AdjustmentEvent AdjustmentListener ComponentEvent ComponentListener ComponentAdapter ContainerEvent ContainerListener ContainerAdapter FocusEvent FocusListener FocusAdapter InputMethodEvent InputMethodListener ItemEvent ItemListener KeyEvent KeyListener KeyAdapter MouseListener MouseAdapter MouseEvent MouseMotionListener MouseMotionAdapter TextEvent TextListener WindowEvent WindowListener WindowAdapter
本文档为【保留字:(所有保留字均为小写)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_471618
暂无简介~
格式:doc
大小:71KB
软件:Word
页数:0
分类:企业经营
上传时间:2017-10-17
浏览量:14