Java基礎 try...catch...catch 使用Exception,去捕獲其子類異常


  •     JDK :OpenJDK-11
  •      OS :CentOS 7.6.1810
  •      IDE :Eclipse 2019‑03
  • typesetting :Markdown

code

package per.jizuiku.base;

/**
 * @author 給最苦
 * @date 2019/06/29
 * @blog www.cnblogs.com/jizuiku
 */
class Demo {

    /**
     * @param args
     */
    public static void main(String[] args) {
        try {
            int a = 1 / 0;
        } catch (Exception e) {
            // 使用眾多異常的父類Exception,去捕獲其所有子類異常
            System.out.println(e.toString() + " 被捕獲");
        }

        System.out.println();

        // try...catch...catch
        try {
            int[] a = {1, 2};
            System.out.println(a[3]);
        } catch (ArrayIndexOutOfBoundsException e) {
            // ArrayIndexOutOfBoundsException 作為Exception的子類,要寫在父的前面
            System.out.println("數組索引不對的異常被捕獲");
        } catch (Exception e) {
            // 使用眾多異常的父類 Exception,去捕獲其所有子類異常
            // 要細選,即子類異常要放在前面.
            System.out.println(e.toString() + " 被捕獲");
        }
    }
}

result

java.lang.ArithmeticException: / by zero 被捕獲

數組索引不對的異常被捕獲

resource

  • [ JDK ] openjdk.java.net
  • [ doc - 參考 ] docs.oracle.com/en/java/javase/11
  • [ 規范 - 推薦 ] yq.aliyun.com/articles/69327
  • [ 規范 - 推薦 ] google.github.io/styleguide
  • [ 源碼 ] hg.openjdk.java.net
  • [ OS ] www.centos.org
  • [ IDE ] www.eclipse.org/downloads/packages
  • [ 平台 ] www.cnblogs.com


感謝幫助過 給最苦 的人們。
Java、Groovy和Scala等基於JVM的語言,優秀,值得學習。
規范的命名和代碼格式等,有助於溝通和理解。
JVM的配置、監控與優化,比較實用,值得學習。


免責聲明!

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



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