• About Me
  • Java基礎教學
  • 部落格聯播

[Java]try catch finally 例外資訊處理

try catch是專門在處理錯誤事件的,很多程式語言都有這樣子的例外處理方法,Java也不例外,對於新入門的可能會比較少遇到這類型的問題,不過是十分重要的一環。

當程式功能越來越多、越來越大時,try catch的使用可以增加除錯(bug)的速度,try catch也可以使用其特性來製做一些技巧性的功能或判斷,而當使用者在操作期間發現了例外或錯誤,如果丟出一堆程式碼大概會讓使用者不知所為,擷取這些例外或錯誤而丟出使用者容易理解的字串,也是try catch的功能之一。

try catch 用法

try裡的敍述句有可能會丟出例外資訊 ( Exception ) ,而丟出的例外資訊 ( Exception ) 型態就可以由catch來取得,做適當的處理。finally則是在try catch完成後會執行的動作,一般都是使用在關閉或則除物件等。

ps.catch取得例外需由小範圍而後大範圍,例如java.lang.NullPointException則需寫在Exception前面,因為NullPointException所能處理的範圍比Exception還小。

3.png

詳細文章

[Java]迴圈中斷及繼續

在上一章節裡提到了迴圈,這章節講要來講述如何中斷或者繼續下一步。

在一般的狀況下,只要跑完迴圈就可以結束這個迴圈的動作了,例如:1 到 50累加,只要到達結束點50就可以結束了,但如果想中突結束呢?是有幾個方法可以這麼做其中有二個是中斷,另一個是叫"繼續",還有另一個是中突出現錯誤Exception而跳出。以下一一來解釋這些方法:

1.迴圈中斷break

當執行迴圈時,合乎結束條件時,迴圈就算完成任務了,但如果中突有需要跳離時呢?這時候可以使用break這個關鍵字。

只需要在想要做中斷的地方輸入break ; 就會直接結束迴圈,並向下執行迴圈外的敘述句

例子:

1
2
3
4
5
6
7
8
        //迴圈裡會印出0,1,2,3,4,5,
        for(int i = 0 ; i < 10;i++)
        {
            System.out.print(i+",");
            if(i==5)//當i==5時就先中斷這個迴圈了
                break;
        }
        System.out.println("xxxxx");

答案:

0,1,2,3,4,5,xxxxx

詳細文章

[Java]迴圈

迴圈是在任何程式語言上都很常見的一種語法,主要在處理重覆的事情,例如:1加到55之類的,或著需重覆做n次的事件,而Java的迴圈一共分成三種方法,一種是for、一種是while另一種是do while迴圈,在什麼時候使用那一種迴圈並沒有一定,大概可分為for:基本型態的遞增減,while:物件下一個或上一個,do while:跟while一樣,只差是先執行而後判斷,以下是比較詳細的說明:

for

當需要某一個變數從A數到B數時,就很常利用for來執行

用法:

for(初始化變數;判斷跳出的條件;增值)

敘述句

其中初始變數、判斷句跟增值都不一定要寫在for後面,下面的範例就把幾種用法帶出來了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
        int i = 0 ; 
        for(;i<5;i++)
            System.out.print(i+",");
        //答案:0,1,2,3,4,
 
        for(int x=0;x<3;x++)
            System.out.print(x+",");
        //答案:0,1,2,
 
        int y=0;//初始
        for(;;)
        {
            if(y>3)//判斷
                break;
            System.out.print(y++);
            y++;//繼續
        }
        //答案0,1,2

詳細文章

Java判斷式-流程判斷是與否

判斷式的使用方法在各種語言上其實都大同小異,不外乎是if else及switch或著是? : 三種,在使用上每個判斷式其後用左右的大刮號{ }夾著要執行的敘述句。以下簡單一下這種種判斷式的用法。

if else 判斷式

if (條件為true))

多行敘述句;;
else

條件為flase的執行敘述句;

或著單行敘述時我們可以使用以下方式

if (條件為true))
單行敘述句;
例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//hello.java
public class hello {
    public static void main(String args[])
    {
        int x =5;
        int y = 6;
        int z =3;
        if(x>y)
            System.out.println("x>y");
        else //執行else內的敘述句,輸出x<y
            System.out.println("x<y");
 
        System.out.println("----------------------------");
 
        if(x>z)//執行if內的敘述句,輸出x>z
        {
            System.out.println("第二例子");
            System.out.println("x>z");
        }
        else
        {
            System.out.println("第二例子");
            System.out.println("x<z");
        }
    }
}

詳細文章

Java關鍵字及變數命名方式

關鍵字:

Java語言本身有一些關鍵字(keyword)及保留字是不能用來當做變數、方法或標記名稱的,每一個關鍵字都有其特殊作用,撰寫人員只可以依其功能加以使用,而不能重新定義它,否則會發生編譯錯誤。

變數的命名方式:

變數的名稱需要是一個合法的"識別字"(Indetifier),識別字是使用英文字母開頭不限長度的Uncode字串,包含字母、數字、底線不可以符號為開頭,如逗號,、點.等。

  • 名稱不可為關鍵字
  • 名稱大小寫是有分別的
  • 名稱在其宣告範圍裡必需是唯一的

變數宣告方式:

資料型態+空白+變數,是一種宣告方式,宣告此變數的資料型態為何,而其後加上= 值或= new Object();可以直接給於初始值,當其型態為一種物件時,而其=null,代表此變數為空值,已不在指定某一記憶體。

詳細文章