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

java異常處理機(jī)制示例(java拋出異常、捕獲、斷言)

 更新時(shí)間:2014年05月01日 07:44:35   作者:  
這篇文章主要介紹了java異常處理機(jī)制示例(java拋出異常、捕獲、斷言),需要的朋友可以參考下

這是一個(gè)介紹基本異常處理的小例子,包括拋出,捕獲,斷言,日志。

Java異常處理通過(guò)5個(gè)關(guān)鍵字try、catch、throw、throws、finally進(jìn)行管理?;具^(guò)程是用try語(yǔ)句塊包住要監(jiān)視的語(yǔ)句,如果在try語(yǔ)句塊內(nèi)出現(xiàn)異常,則異常會(huì)被拋出,你的代碼在catch語(yǔ)句塊中可以捕獲到這個(gè)異常并做處理;還有以部分系統(tǒng)生成的異常在Java運(yùn)行時(shí)自動(dòng)拋出。你也可以通過(guò)throws關(guān)鍵字在方法上聲明該方法要拋出異常,然后在方法內(nèi)部通過(guò)throw拋出異常對(duì)象。

復(fù)制代碼 代碼如下:

package com.hongyuan.test;

import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;

public class ExceptionHandleTest {

 static{
  //開(kāi)啟斷言,此后由系統(tǒng)類(lèi)加載器加載的類(lèi)將啟用斷言。
  ClassLoader.getSystemClassLoader().setDefaultAssertionStatus(true);
 }

 public static void main(String[] args) {
  /*
   * 拋出,捕獲
   */
  try {
   TryCatchTest.run(10, -1);
  } catch (IOException e) {
   e.printStackTrace();
  }
  System.out.println("====================================================");

  //日志
  LogerTest.run();

  System.out.println("====================================================");
  //斷言
  AssertTest.div(3,0);

 }

}

/*
 * 斷言
 */
class AssertTest {

 public static double div(int b,int a){

  assert a!=0:"你這么用,你小學(xué)老師知道嗎?";

  return (double)b/a;
 }
}

/*
 * 日志
 */
class LogerTest {

 private static Logger logger=null;

 static{
  //獲取日志對(duì)象并定義日志級(jí)別
  logger=Logger.getLogger(LogerTest.class.getName());
  logger.setLevel(Level.ALL);
 }

 public static void run(){
  //進(jìn)入方法
  logger.entering(LogerTest.class.getName(), "run");
  //普通信息
  logger.info("又來(lái)找我麻煩,這筆賬我記下了?。?!");
  //警告
  logger.warning("太累了,這活沒(méi)法干了?。。?);
  //嚴(yán)重
  logger.log(Level.SEVERE,"老子不干了!!! ^O^");
  //退出方法
  logger.exiting(LogerTest.class.getName(), "run");
 }
}

/*
 * 捕獲,拋出
 */
class TryCatchTest {

 public static void run(int x,int y) throws IOException {

  try{//必須

   if(x<0||y<0){
    throw new IllegalArgumentException("無(wú)語(yǔ)了,這讓我怎么辦?。。?!");
   }

  }catch(Exception e){//可選

   IOException e1=new IOException("你自己看著辦吧!");
   e1.initCause(e.getCause());

   throw e1;
  }finally{//可選

   System.out.println("最后他們過(guò)上了幸福的生活?。。。。ㄍ辏?);
  }
 }
}



相關(guān)文章

  • HttpServletRequestWrapper干預(yù)Request處理流程解析

    HttpServletRequestWrapper干預(yù)Request處理流程解析

    這篇文章主要分析在?Tomcat的處理?http?請(qǐng)求的流程中干預(yù)?Request對(duì)象,?通過(guò)基于HttpServletRequestWrapper和?Filter組合進(jìn)行干預(yù),有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2023-09-09
  • Java多線(xiàn)程之Semaphore實(shí)現(xiàn)信號(hào)燈

    Java多線(xiàn)程之Semaphore實(shí)現(xiàn)信號(hào)燈

    這篇文章主要給大家分享的是Java多線(xiàn)程之Semaphore實(shí)現(xiàn)信號(hào)燈的練習(xí),emaphore是計(jì)數(shù)信號(hào)量。Semaphore管理一系列許可證。每個(gè)acquire方法阻塞,直到有一個(gè)許可證可以獲得然后拿走一個(gè)許可證;下面一起進(jìn)入文章學(xué)習(xí)Semaphore的具體內(nèi)容
    2021-10-10
  • spring bean.xml文件p標(biāo)簽使用報(bào)錯(cuò)的解決

    spring bean.xml文件p標(biāo)簽使用報(bào)錯(cuò)的解決

    這篇文章主要介紹了spring bean.xml文件p標(biāo)簽使用報(bào)錯(cuò)的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Java基礎(chǔ)之自定義類(lèi)加載器

    Java基礎(chǔ)之自定義類(lèi)加載器

    應(yīng)該有很多小伙伴還不了解Java自定義類(lèi)加載器吧,下文中有對(duì)Java自定義類(lèi)加載器非常詳細(xì)的描述,還有小伙伴們最喜歡的代碼環(huán)節(jié),需要的朋友可以參考下
    2021-05-05
  • Java中日期時(shí)間的用法總結(jié)

    Java中日期時(shí)間的用法總結(jié)

    在日常開(kāi)發(fā)中,我們經(jīng)常需要處理日期和時(shí)間,所以這篇文章小編為大家總結(jié)了下?Java?中日期與時(shí)間的基本概念與一些常用的用法,希望對(duì)大家有所幫助
    2023-09-09
  • Java?Hutool工具包中HttpUtil的日志統(tǒng)一打印及統(tǒng)一超時(shí)時(shí)間配置

    Java?Hutool工具包中HttpUtil的日志統(tǒng)一打印及統(tǒng)一超時(shí)時(shí)間配置

    Hutool是一個(gè)Java基礎(chǔ)工具類(lèi),對(duì)文件、流、加密解密、轉(zhuǎn)碼、正則、線(xiàn)程、XML等JDK方法進(jìn)行封裝,組成各種Util工具類(lèi),這篇文章主要給大家介紹了關(guān)于Java?Hutool工具包中HttpUtil的日志統(tǒng)一打印及統(tǒng)一超時(shí)時(shí)間配置的相關(guān)資料,需要的朋友可以參考下
    2024-01-01
  • List集合對(duì)象中按照不同屬性大小排序的實(shí)例

    List集合對(duì)象中按照不同屬性大小排序的實(shí)例

    下面小編就為大家?guī)?lái)一篇List集合對(duì)象中按照不同屬性大小排序的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-03-03
  • 簡(jiǎn)述Mybatis增刪改查實(shí)例代碼

    簡(jiǎn)述Mybatis增刪改查實(shí)例代碼

    本文給大家分享編寫(xiě)一個(gè)簡(jiǎn)單的mybatis進(jìn)行插入數(shù)據(jù)的實(shí)例代碼,非常不錯(cuò)具有參考借鑒價(jià)值,感興趣的朋友一起看看吧
    2016-10-10
  • Java Assert.assertEquals案例詳解

    Java Assert.assertEquals案例詳解

    這篇文章主要介紹了Java Assert.assertEquals案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Java后臺(tái)接口開(kāi)發(fā)初步實(shí)戰(zhàn)教程

    Java后臺(tái)接口開(kāi)發(fā)初步實(shí)戰(zhàn)教程

    下面小編就為大家分享一篇 Java后臺(tái)接口開(kāi)發(fā)初步實(shí)戰(zhàn)教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-01-01

最新評(píng)論

吉林市| 阳西县| 仙桃市| 珠海市| 紫云| 彭泽县| 子长县| 林甸县| 青田县| 韩城市| 祁连县| 高陵县| 靖州| 财经| 新营市| 迭部县| 仁布县| 德令哈市| 泰和县| 淮阳县| 井冈山市| 礼泉县| 临泉县| 布尔津县| 治多县| 民权县| 延庆县| 石狮市| 运城市| 榕江县| 舟山市| 乐业县| 阿合奇县| 上栗县| 普格县| 福海县| 临清市| 衡东县| 商洛市| 岢岚县| 遂昌县|