1. 程式人生 > >Java 異常處理 之 捕獲處理流程

Java 異常處理 之 捕獲處理流程

package com.exception2;
/*
 * 注意:
	1. 當異常發生的時候,程式會終止,其後面的程式碼不會執行.
	2. 異常分為編譯時異常和執行期異常
		編譯期異常必須用 try{}catch{}捕獲,執行期異常可以不捕獲
		編譯期異常從 Exception 繼承,  執行期異常從RuntimeException 繼承


異常的處理流程

注意:
	1. try{}catch{} 程式碼塊裡的區域性變數, 不能在其外訪問. 所以如果要訪問
	   最好在try catch 程式碼塊外定義,然後再使用.
	2. 異常執行流程 當異常發生時,首先系統產生一個異常例項, 如果沒有try catch
	   程式碼塊報異常終止執行, 如果遇到try catch 程式碼塊, 系統會把異常例項跟
	   catch() 裡面的異常物件依次從上往下進行匹配,如果匹配成功進入 catch{} 程式碼塊. 否則
	   報異常終止執行.
	3. Exception 是異常的根類, 根據多型原則,所以所有的異常例項都可以轉為Exception
	   這樣通過 Exception 就可以捕獲到所有出現的異常.
	4. finally{ }程式碼塊的內容不管是否有異常 都會執行。 用來釋放資源,比如
	   關閉檔案,關閉資料庫連線等。
	5. finally{} 程式碼塊的語句, 是在return 之前執行的.
 */
public class TestException
{
	public static void main(String[] args)
	{
		int[] scores={60,70,80};
		
		try
		{
			System.out.println(scores[3]);
			System.out.println(3/0);
		}
		catch (ArrayIndexOutOfBoundsException e)
		{
			System.out.println("陣列越界異常");
		}
		catch(ArithmeticException e)
		{
			System.out.println("數學異常");
		}
		catch(Exception e)
		{
			System.out.println("發生了異常");
		}
		
	}
}

相關推薦

Java 異常處理 捕獲處理流程

package com.exception2; /* * 注意: 1. 當異常發生的時候,程式會終止,其後面的程式碼不會執行. 2. 異常分為編譯時異常和執行期異常 編譯期異常必須用 try{}catch{}捕獲,執行期異常可以不捕獲 編譯期異常從 Except

Java核心技術註解處理

註解處理 執行時處理 定義一個註解ToString(註解本質上就是一種介面) @Target({ElementType.FIELD, ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) public @interfac

Java異常知識整理_處理異常時的效能開銷

1.首先列兩個從別的地方看到的說法: try-catch程式碼段會產生額外的效能開銷,或者換個角度說,它往往會影響JVM對程式碼進行優化,所以建議僅捕獲有必要的程式碼段,儘量不要一個大的try包住整段的程式碼;與此同時,利用異常控制程式碼流程,也不是一個好主意,遠比我們通常意義上的條件語句(if/el

java批量執行分批處理

相關: 在處理一些與資料庫相關的操作的時候,通常把一些操作合併能夠起到優化的效果,並且數量越大,批量執行的效率比一條一條執行的效率要快的多。 批量插入比單次插入快 比如有十條資料單條執行需要操作十次資料庫,批量的話執行一次資料庫的操作就可以。 對應的sql語句: 單

Java 異常分類及統一處理(一)

一、異常分類 java異常分為”檢查”和”非檢查”兩類,”檢查”二字的意思是,程式碼編譯時,編譯器會去Check一下有沒有進行異常處理(捕獲或向上拋),對於歸類為需要檢查的異常,若沒處理,編譯就過不去。 初學的時候,常常想為啥異常要這樣分類處理? 後來明白了些,異常不過兩種:主觀和客觀,一個大多

Java 異常分類及統一處理

一、異常分類 java異常分為”檢查”和”非檢查”兩類,”檢查”二字的意思是,程式碼編譯時,編譯器會去Check一下有沒有進行異常處理(捕獲或向上拋),對於歸類為需要檢查的異常,若沒處理,編譯就過不去。 初學的時候,常常想為啥異常要這樣分類處理? 後來明白了

Spring 異常處理全域性處理

承接上文Spring異常處理之本地處理,本文介紹spring異常處理的第三種方式,也就是全域性處理。為什麼將該方式取名為全域性處理,其實很簡單,因為該方式本質上和本地處理是一樣的,無非就是本地處理將異常處理方法或者說異常處理邏輯直接寫在controller中,而

每天學點java效能優化字串處理優化

<pre code_snippet_id="1604271" snippet_file_name="blog_20160310_1_3195965" name="code" class="java"> 在java語言中,java的設計者對String物件進行

Spring 異常處理本地處理

承接上文Spring 異常處理之 HTTP 狀態碼,本文介紹spring異常處理的第二種方式。為什麼說這種異常處理方式叫本地處理,因為該方式是在Controller內部處理該Controller中的方法丟擲的異常。 需要注意的是,這種方式其實還可以細分為3種。具

Java異常解決--java.lang.NullPointerException

null 異常 bsp ray lan 判斷 常常 類型 對象 1、java.lang.NullPointerException【空指針異常】一般報java.lang.NullPointerException的原因有以下幾種 :一般常常都是你引用了一個未 new 變量 或者

影象處理直方圖處理

灰度級範圍為[0,L-1]的數字影象的直方圖是離散函式: 其中是第k級灰度值(=k),是影象中灰度值為的畫素個數。 通常用MN表示的影象畫素的總數除它的每個分量來歸一化直方圖,即: M和N分別是影象的行和列維數,k = 0,1,...,L-1。歸一化直方圖的所有

java程式設計思想控制執行流程

java 使用了c的所有流程控制語句,涉及的關鍵字包括 if-else、while、do - while 、for 、 return 、break以及選擇語句switch。 1、true和false 所有條件語句都利用條件表示式的真或假來決定執行路徑 2、 if - elseif -

Java異常記錄——NoSuchElementException

今天啟動專案的時候報了這個錯,度娘有的說是執行緒越界,有的說是集合遍歷我的異常資訊,最後可以看到是說ArrayList$Itr.next報錯了,是集合的遍歷出錯了,往下看說是jpa的query出錯了,這是jpa的查詢,忽然記得曾經改動過jpa的引數數量,試著手動加了一個que

Salesforce LWC學習(十) 前端處理 list 處理

本篇參看:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array list是我們經常要處理的內容,lwc前端針對list主要有幾個函式處理,不同函式針對不同場景有不同的功能。下面就根據幾個常用

Java 異常捕獲處理(異常處理流程)

import java.util.Scanner; public class Demo { public static void main(String[] args) { Scanner in

Java異常處理,日期處理

出了 指定 初始化 ring () next height 常見問題 自定義 Java異常處理 異常:異常就是Java程序在運行過程中出現的錯誤。 異常由來:問題也是現實生活中一個具體事務,也可以通過java 的類的形式進行描述,並封裝成對象。其實就是Java對不正常情

java的專題異常處理——將異常處理運用在用戶管理系統中(很重要)

ava 例子 AS 異常處理 構造方法 str run 用戶 per 如何讓我們的異常處理變得足夠靈活—— 我們可以自己創建一個異常類(所有異常的通用操作) 在用戶管理系統中具體操作如下: 1、創建一個UserException的類 2、找到Superclass,點擊Bro

Java學習筆記異常處理

span 怎麽辦 空指針 處理 異常處理 空指針異常 一個 算數 輸入 一.異常的分類   1.由Java虛擬機拋出的異常(Error):程序無法處理的問題,用戶不用去進行處理(虛擬機錯誤丶內存溢出錯誤丶線程死鎖)    2.Exception異常:程序本身可以進行處理的異

Java開發知識Java異常處理

ssa run 範圍 com 行處理 意思 操作 spa exce       Java開發知識之Java的異常處理 一丶異常概述   在講解異常之前,我們要搞清楚.什麽是異常. 通俗理解就是我們編寫的程序出問題了.進行處理的一種手段. 比如我們的QQ.有的時候就崩潰了.比

java 異常處理宣告丟擲異常

java 異常處理宣告丟擲異常 2.宣告丟擲異常是Java中處理異常的第二種方式 2.宣告丟擲異常是Java中處理異常的第二種方式 如果一個方法(中的語句執行時)可能生成某種異常,但是並不能確定如何處理這種異常,則此方