Java基礎-常見異常
阿新 • • 發佈:2022-03-08
package com.hspedu.exception_; public class Course446 { public static void main(String[] args) { // 常見的執行異常5種 // 空指標異常 try { // String name = "韓順平教育"; String name = null; System.out.println("name.length: " + name.length()); } catch (Exception e) { e.printStackTrace(); System.out.println(e.getMessage()); } System.out.println("========================================="); // 陣列越界異常 int[] arr = {1, 2, 4}; try { for (int i = 0; i <= arr.length; i++) { System.out.println(arr[i]); } } catch (Exception e) { e.printStackTrace(); System.out.println("錯誤資訊:" + e.getMessage()); } System.out.println("========================================="); // 型別轉換異常 A b = new B(); B b2 = (B) b; // 正確 try { C c2 = (C) b; // 錯誤 } catch (Exception e) { e.printStackTrace(); System.out.println(e.getMessage()); } System.out.println("========================================="); // 數字格式不正確異常 try { String name = "韓順平教育"; int num = Integer.parseInt(name); System.out.println("num: " + num); } catch (NumberFormatException e) { e.printStackTrace(); System.out.println(e.getMessage()); } } } class A { } class B extends A { } class C extends A { }