亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

淺談異常結構圖、編譯期異常和運行期異常的區(qū)別

 更新時間:2016年09月30日 11:28:29   投稿:jingxian  
下面小編就為大家?guī)硪黄獪\談異常結構圖、編譯期異常和運行期異常的區(qū)別。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

異常處理一般有2種方式,要么捕獲異常try-catch,要么拋出異常throws

如果一個方法后面拋出一個運行時期異常(throws RuntimeException),調(diào)用者無須處理

如果一個方法后面拋出一個編譯時期異常,調(diào)用者必須處理,或者拋出或者try-catch;

運行時期的異常一般都不處理,一般是程序邏輯上的錯誤,比如分母為0作為除數(shù)了。。。

注意如果在try里面出現(xiàn)了異常后,try下面的語句就不會執(zhí)行,回去尋找catch匹配異常處理會,接下來的語句會處理的(也就是在try-catch-finally之后的語句會繼續(xù)執(zhí)行)

/*
 * 有些時候,我們是可以對異常進行處理的,但是又有些時候,我們根本就沒有權限去處理某個異常。
 * 或者說,我處理不了,我就不處理了。
 * 為了解決出錯問題,Java針對這種情況,就提供了另一種處理方案:拋出。
 *
 * 格式:
 *         throws 異常類名
 *         注意:這個格式必須跟在方法的括號后面。
 *
 * 注意:
 *         盡量不要在main方法上拋出異常。
 *         但是我講課為了方便我就這樣做了。
 *
 * 小結:
 *         編譯期異常拋出,將來調(diào)用者必須處理。
 *         運行期異常拋出,將來調(diào)用可以不用處理。
 */

凡是RuntimeException及其子類的異常都不處理(不拋出也不捕獲),如果真的知道運行時會有異常拋出的話,,那么直接檢查修改程序的邏輯就OK?。?!

package 異常;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class ExceptionDemo {
	public static void main(String[] args) {
		System.out.println("調(diào)用方法之前");
		try {
			method();// 編譯時期異常拋出必須處理
		} catch (ParseException e) {
			e.printStackTrace();
		}
		System.out.println("調(diào)用方法1后在調(diào)用方法二");
		method2();
	}

	public static void method2() throws RuntimeException{
		int a = 10;
		int b = 0;
		System.out.println("a/b="+a/b);//運行時期異??梢圆挥锰幚?,如果處理為拋出異常throws,那么調(diào)用者也無需必須處理異常
	}

	public static void method() throws ParseException {
		String string = "2015-05-30";
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");//會逐步匹配string格式,不對就拋異常
		SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//如果string只有2015-05-30,沒有后面的,那么會跑異常,因為這個sdf2無法匹配HH:mm:ss
		Date date = sdf.parse(string);
		System.out.println("日期格式化:" + date);
	}

}

異常結構圖:

error的異常我們程序員不用處理也處理不了,

runtimeexception的運行時期異常我們也無需處理,

其他的就是編譯時期的異常我們就要處理了。

以上就是小編為大家?guī)淼臏\談異常結構圖、編譯期異常和運行期異常的區(qū)別的全部內(nèi)容了,希望對大家有所幫助,多多支持腳本之家~

您可能感興趣的文章:

相關文章

  • RabbitMQ消息中間件示例詳解

    RabbitMQ消息中間件示例詳解

    這篇文章主要給大家介紹了關于RabbitMQ消息中間件的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一學習學習吧
    2018-12-12
  • Spring實戰(zhàn)之Bean的作用域request用法分析

    Spring實戰(zhàn)之Bean的作用域request用法分析

    這篇文章主要介紹了Spring實戰(zhàn)之Bean的作用域request用法,結合實例形式分析了spring中Bean的request作用域相關使用技巧與操作注意事項,需要的朋友可以參考下
    2019-11-11
  • SpringCloud搭建netflix-eureka微服務集群的過程詳解

    SpringCloud搭建netflix-eureka微服務集群的過程詳解

    這篇文章主要介紹了SpringCloud搭建netflix-eureka微服務集群的過程詳解,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04
  • SpringCloud URL重定向及轉發(fā)代碼實例

    SpringCloud URL重定向及轉發(fā)代碼實例

    這篇文章主要介紹了SpringCloud URL重定向及轉發(fā)代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • Java8中Optional類型和Kotlin中可空類型的使用對比

    Java8中Optional類型和Kotlin中可空類型的使用對比

    這篇文章主要給大家介紹了關于Java8中Optional類型和Kotlin中可空類型的使用對比,文中通過示例代碼給大家介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2017-09-09
  • java Swing布局管理之BoxLayout布局

    java Swing布局管理之BoxLayout布局

    這篇文章主要為大家詳細介紹了java Swing布局管理之BoxLayout布局的相關資料,感興趣的小伙伴們可以參考一下
    2016-05-05
  • SpringBoot上下文初始器加載過程詳解

    SpringBoot上下文初始器加載過程詳解

    這篇文章主要介紹了SpringBoot上下文初始器加載過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-06-06
  • java迭代器原理及迭代map的四種方式

    java迭代器原理及迭代map的四種方式

    本文我們將了解一下java迭代器原理及其在Java中迭代Map各種不同方法。具有一定的參考價值,感興趣的可以了解一下
    2021-09-09
  • SpringBoot為何可以使用Jar包啟動詳解

    SpringBoot為何可以使用Jar包啟動詳解

    springboot jar包啟動腳本,適用于快速啟動,刪除,重啟,以及查看狀態(tài),下面這篇文章主要給大家介紹了關于SpringBoot為何可以使用Jar包啟動的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-03-03
  • Java 集合中的類關于線程安全

    Java 集合中的類關于線程安全

    這篇文章主要介紹了Java 集合中的類關于線程安全的相關資料,需要的朋友可以參考下
    2017-01-01

最新評論