Educoder - Java面向對象 - Java中的異常


第1關:Java 中的異常處理機制

  1、選擇題:

  

  2、答案:

    B       ACE       D

 

第2關:捕獲異常

  1、編程要求:

    編輯器中的代碼運行時可能會有異常,請利用本關知識處理該異常。

 

  2、測試效果:

  補充完代碼后,點擊測評,平台會對你編寫的代碼進行測試,當你的結果與預期輸出一致時,即為通過。

  輸入: 4 2

  輸出: 2

  輸入: 4 0

  輸出: 除數不能為0

 

  3、代碼展示:

package step2;

import java.util.Scanner;

public class Task {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int num1 = sc.nextInt();
        int num2 = sc.nextInt();
        /********* Begin *********/
        try{
            int b =num1/num2;
        }catch(ArithmeticException e){
            System.out.println("除數不能為0");
        }
        System.out.println(num1/num2);
        
        
        /********* End *********/
    }

}

 

第3關:拋出異常

  1、編程要求:

    異常的拋出和處理。

  2、測試效果:  

    補充完代碼后,點擊測評,平台會對你編寫的代碼進行測試,當你的結果與預期輸出一致時,即為通過。

    預期輸出:該文件不存在

  3、代碼展示:

    

package step3;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

public class Task {
    /********* Begin *********/
    //請在合適的部位添加代碼
    public static void main(String[] args) throws FileNotFoundException       {    
        test();
    }
    public static void test() throws FileNotFoundException           {
        File file = new File("abc");
        if(!file.exists()){        //判斷文件是否存在
            //文件不存在,則 拋出 文件不存在異常
            throw new FileNotFoundException("該文件不存在");
        }else{
            FileInputStream fs = new FileInputStream(file);
        }
    }
    /********* End *********/
}

 

第4關:自定義異常 

  1、編程要求:

  定義一個自定義異常,判斷用戶名是否小於三位,如果用戶名小於三位,就拋出一個自定義異常。

 

  2、測試效果:

 

  補充完代碼后,點擊測評,平台會對你編寫的代碼進行測試,當你的結果與預期輸出一致時,即為通過。

  輸入:

  admin

  輸出:

  用戶名格式正確

  輸入:

  ab

  輸出:

  Exception in thread "main" step4.MyException: 用戶名小於三位Exception at step4.Task.main(Task.java:13)

  注意:因為拋出異常時會顯示行號,請在13行拋出異常,否則評測可能不通過。

 

  3、代碼展示:

package step4;

import java.util.Scanner;

public class Task {
    /********* Begin *********/
    public static void main(String[] args) throws  MyException{
        Scanner sc = new Scanner(System.in);
        String username = sc.next();


        //判斷用戶名
        char[] chs = username.toCharArray();//字符串轉字符數組
        
        if(chs.length <3){
            throw new MyException("用戶名小於三位Exception");
        }System.out.print("用戶名格式正確");
        
    }
}

class MyException extends Exception{
    public MyException(String m){
        super(m);
    }
}

/********* End *********/

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM