最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java 認(rèn)識(shí)異常并掌握使用

 更新時(shí)間:2021年09月28日 14:42:26   作者:冷丁_  
所謂異常是指程序在運(yùn)行時(shí)出現(xiàn)錯(cuò)誤時(shí)提示調(diào)用者的機(jī)制,異常的種類有很多,不同種類的異常有不同的含義,也有不同的處理方式,通讀本篇對(duì)大家的學(xué)習(xí)或工作具有一定的價(jià)值,需要的朋友可以參考下

Error

Java中的錯(cuò)誤是不能被處理的,由JVM(Java虛擬機(jī))拋出

Exception

異常是可以被處理的
常見(jiàn)的錯(cuò)誤和異常如下圖

在這里插入圖片描述

對(duì)于異常,必須要進(jìn)行捕捉或聲明拋出

  • 1.捕獲異常

try-執(zhí)行可能產(chǎn)生異常的代碼
catch-捕獲異常
finally-無(wú)論是否發(fā)送異常代碼總能執(zhí)行
try… catch… 相當(dāng)于自己處理了異常

  • 2.聲明異常

throws -聲明可能要拋出的異常
throws會(huì)將異常直接拋給上層處理

  • 3.throw

throw-生成一個(gè)異常類對(duì)象
throw相當(dāng)于手動(dòng)拋出異常

try…catch

測(cè)試1

package com.lding.exception;

import java.util.Scanner;

/**
 * @program: Chat
 * @description:
 * @author: 王丁
 * @date: 2021-09-28 10:49
 **/
public class TryDemoOne {
    public static void main(String[] args) {

        //要求:定義兩個(gè)整數(shù),接受用戶鍵盤輸入,輸出兩數(shù)之商
        Scanner input = new Scanner(System.in);
        System.out.println("=======運(yùn)算開(kāi)始========");
        try { //包裹可能出錯(cuò)的代碼
            System.out.print("請(qǐng)輸入第一整數(shù):");
            int one = input.nextInt();
            System.out.print("請(qǐng)輸入第二個(gè)整數(shù):");
            int two = input.nextInt();
            System.out.println("one和two的商是:" + (one / two));
        }catch (Exception e){//捕獲異常
            e.printStackTrace();//打印出錯(cuò)的位置
            System.out.println("程序出錯(cuò)了~~~~~");//出錯(cuò)后執(zhí)行的語(yǔ)句
        }
        finally {//無(wú)論是否出錯(cuò)都一定會(huì)執(zhí)行的語(yǔ)句
            System.out.println("======運(yùn)算結(jié)束========");
        }
    }

}

運(yùn)行結(jié)果

在這里插入圖片描述

注意:當(dāng)使用多重try…catch時(shí)要注意范圍,大范圍的(即父類)要后置

自定義異常類

AgeException類 寫一個(gè)類繼承Exception
在里面寫其構(gòu)造方法,在構(gòu)造方法中調(diào)用父類方法,傳入字符串

package com.lding.exception;

/**
 * @program: Chat
 * @description:
 * @author: 王丁
 * @date: 2021-09-28 11:22
 **/
public class AgeException extends Exception {
    public AgeException(){
        super("年齡不能為負(fù)數(shù)");
    }
}

AgeTest測(cè)試類

package com.lding.exception;

/**
 * @program: Chat
 * @description:
 * @author: 王丁
 * @date: 2021-09-28 11:23
 **/
public class ExceptionTest {
    public static void testage(int age) throws AgeException {
        if(age<0){
            throw new AgeException();
        }
    }
    public static void main(String[] args) {
        int age=-1;
        try {
            testage(age);
        } catch (AgeException e) {
            e.printStackTrace();
        }
    }
}

測(cè)試結(jié)果

在這里插入圖片描述

到此這篇關(guān)于Java 認(rèn)識(shí)異常并掌握使用的文章就介紹到這了,更多相關(guān)Java 異常內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java中對(duì)HashMap的put過(guò)程解讀

    java中對(duì)HashMap的put過(guò)程解讀

    這篇文章主要介紹了java中對(duì)HashMap的put過(guò)程解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • json序列化時(shí)忽略值為null的字段2種方式實(shí)例

    json序列化時(shí)忽略值為null的字段2種方式實(shí)例

    這篇文章主要給大家介紹了關(guān)于json序列化時(shí)忽略值為null的字段的2種方式,當(dāng)對(duì)象中某個(gè)字段為null時(shí),我們希望將對(duì)象轉(zhuǎn)換成json時(shí)為null的字段不會(huì)被轉(zhuǎn)換到j(luò)son字符串,里面需要的朋友可以參考下
    2023-10-10
  • Java實(shí)現(xiàn)WORD和PDF互相轉(zhuǎn)換以及數(shù)據(jù)填充示例

    Java實(shí)現(xiàn)WORD和PDF互相轉(zhuǎn)換以及數(shù)據(jù)填充示例

    本文介紹了如何使用Java實(shí)現(xiàn)WORD和PDF的互轉(zhuǎn)以及數(shù)據(jù)填充功能,通過(guò)導(dǎo)入Aspose庫(kù)并使用其工具類,可以輕松實(shí)現(xiàn)WORD和PDF模板的填充和轉(zhuǎn)換,需要的朋友可以參考下
    2025-02-02
  • springboot排除某些自動(dòng)配置的操作方法

    springboot排除某些自動(dòng)配置的操作方法

    Spring Boot 提供的自動(dòng)配置非常強(qiáng)大,某些情況下,自動(dòng)配置的功能可能不符合我們的需求,需要我們自定義配置,這個(gè)時(shí)候就需要排除/禁用Spring Boot 某些類的自動(dòng)化配置了,本文給大家介紹springboot排除某些自動(dòng)配置的方法,感興趣的朋友一起看看吧
    2023-08-08
  • SpringBoot的監(jiān)控及使用詳解

    SpringBoot的監(jiān)控及使用詳解

    這篇文章主要介紹了SpringBoot的監(jiān)控及使用詳解,Spring Boot提供了一系列的監(jiān)控功能,方便開(kāi)發(fā)人員對(duì)應(yīng)用程序進(jìn)行監(jiān)控和管理,本文將討論 Spring Boot中的監(jiān)控功能及其使用方法,需要的朋友可以參考下
    2023-07-07
  • java仿QQ微信聊天室功能的實(shí)現(xiàn)

    java仿QQ微信聊天室功能的實(shí)現(xiàn)

    這篇文章主要介紹了java仿QQ微信聊天室的實(shí)現(xiàn)代碼,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,,需要的朋友可以參考下
    2021-04-04
  • Java MyBatis返回兩個(gè)字段作為Map的key和value問(wèn)題

    Java MyBatis返回兩個(gè)字段作為Map的key和value問(wèn)題

    使用MyBatis查詢兩個(gè)字段并返回Map時(shí),需要注意數(shù)據(jù)量和值的類型,直接返回Map會(huì)導(dǎo)致報(bào)錯(cuò),使用@MapKey注解可以生成Map,但值是對(duì)象而不是直接值,為了解決這個(gè)問(wèn)題,可以自定義一個(gè)Map結(jié)果處理器MapResultHandler
    2024-12-12
  • Java中如何獲取mysql連接的3種方法總結(jié)

    Java中如何獲取mysql連接的3種方法總結(jié)

    最近工作中需要用到mysql連接,發(fā)現(xiàn)實(shí)現(xiàn)的方法不止一個(gè),所以就來(lái)總結(jié)下,下面這篇文章主要給大家介紹了關(guān)于Java中如何獲取mysql連接的3種方法,需要的朋友可以參考借鑒,感興趣的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-08-08
  • 深入理解java泛型詳解

    深入理解java泛型詳解

    這篇文章主要介紹了Java中的泛型詳解,什么是泛型,作用以及基礎(chǔ)實(shí)例等,喜歡的朋友可以參考
    2017-04-04
  • Java Listener監(jiān)聽(tīng)器使用規(guī)范詳細(xì)介紹

    Java Listener監(jiān)聽(tīng)器使用規(guī)范詳細(xì)介紹

    監(jiān)聽(tīng)器是一個(gè)專門用于對(duì)其他對(duì)象身上發(fā)生的事件或狀態(tài)改變進(jìn)行監(jiān)聽(tīng)和相應(yīng)處理的對(duì)象,當(dāng)被監(jiān)視的對(duì)象發(fā)生情況時(shí),立即采取相應(yīng)的行動(dòng)。監(jiān)聽(tīng)器其實(shí)就是一個(gè)實(shí)現(xiàn)特定接口的普通java程序,這個(gè)程序?qū)iT用于監(jiān)聽(tīng)另一個(gè)java對(duì)象的方法調(diào)用或?qū)傩愿淖?/div> 2023-01-01

最新評(píng)論

孝感市| 康乐县| 象山县| 平凉市| 锡林郭勒盟| 贡山| 武穴市| 商城县| 平罗县| 札达县| 册亨县| 项城市| 同江市| 黔西| 永清县| 轮台县| 南雄市| 嘉兴市| 区。| 高州市| 林口县| 中江县| 浦东新区| 安新县| 双流县| 肇源县| 临沧市| 溧阳市| 安顺市| 土默特左旗| 务川| 浙江省| 会泽县| 灵丘县| 宁陵县| 平陆县| 于都县| 自贡市| 延长县| 嘉义县| 开鲁县|