华南俳烁实业有限公司

考試首頁 | 考試用書 | 培訓(xùn)課程 | 模擬考場 | 考試論壇  
全國  |             |          |          |          |          |         
  當(dāng)前位置:計(jì)算機(jī)等級(jí) > 二級(jí)考試 > Java語言程序設(shè)計(jì) > 模擬試題 > 文章內(nèi)容
  

全國計(jì)算機(jī)等級(jí)考試Java試題及答案(8)

中華IT學(xué)院   【 】  [ 2016年2月19日 ]

什么是異常?為什么要進(jìn)行異常處理?

解:Java把在程序執(zhí)行期間遇到的意外事件稱為錯(cuò)誤,并將錯(cuò)誤分為兩類。一類是非致命性的,通過某種修改后程序還能繼續(xù)執(zhí)行,這類錯(cuò)誤稱做異常。另外一類是致命性的,即程序遭到了非常嚴(yán)重的不正常狀態(tài),不能簡單地恢復(fù)執(zhí)行,這類錯(cuò)誤稱做錯(cuò)誤或致命性錯(cuò)誤。錯(cuò)誤處理一般由系統(tǒng)承擔(dān)。

    當(dāng)異常發(fā)生時(shí)異常處理能夠提供相應(yīng)的處理方法代碼使程序繼續(xù)執(zhí)行。Java專門設(shè)計(jì)了相應(yīng)的異常處理機(jī)制。

如何創(chuàng)建一個(gè)自定義異常?

  解:自定義異常類型是從Exception類中派生的,所以要使用下面的生命語句來創(chuàng)建:

  <自定義異常名>{…}

如何拋出自定義異常?

解:可使用以下3種方法拋出自定義異常。

(1)         使用try-catch-finally語句,在try子句中使用throw new拋出異常并捕獲異常,在catch或finally子句中給出異常處理的代碼,使程序繼續(xù)執(zhí)行。

(2)         使用throws語句在聲明方法的同時(shí)聲明拋出異常的類型,當(dāng)異常發(fā)生時(shí)交由系統(tǒng)處理。

(3)         使用throw new語句直接拋出異常。

下面的程序有何錯(cuò)誤?

  public class Quiz1{

     public static viod main(String args[]){myMathod();}

     myMathod() {throw new MyException();}

}

  class MyException{

     public String toString() {return“自定義異!保粆

}

  解:MyException不是一個(gè)異常類,所以在myMathod方法中不能使用throw new語句拋出。

下面的程序輸出是什么?說出理由。(C)

  public class Q1{

     public static void main(String args[]){

       try {throw new MyException();}

       catch(Exception e){

         System.out.println(“It’s caught!”);

}

finally{

  System.out.println(“It’s finally caught!”);}

}

  class MyException extends Exception{}

  A.It’s finally caught!       B.It’s caught!

  C.It’s caught!               D. 無輸出

It’s finally caught!

  解:因?yàn)閠ry子句中捕獲并拋出一個(gè)自定義異常MyException,則執(zhí)行從該處中斷而進(jìn)入catch塊,根據(jù)異常的類型進(jìn)行匹配,只要該異常是catch中指定的異常的子類就匹配成功進(jìn)而執(zhí)行相應(yīng)的catch中的內(nèi)容,而finally塊中的內(nèi)容無論是否發(fā)生異常都將被執(zhí)行。所以程序輸出應(yīng)該是選項(xiàng)C。

 

分享到:
本文糾錯(cuò)】【告訴好友】【打印此文】【返回頂部
將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動(dòng)訪問考試網(wǎng) | 復(fù)制本頁地址,傳給QQ/MSN上的好友 | 申請鏈接 | 意見留言 TOP
關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
Copyright © 2007-2013 中華考試網(wǎng)(Examw.com) All Rights Reserved
沾益县| 樟树市| 宝清县| 武胜县| 环江| 萨嘎县| 高安市| 崇左市| 衡阳县| 连江县| 大同市| 腾冲县| 依安县| 新田县| 南开区| 广饶县| 南充市| 无极县| 辽宁省| 南江县| 西昌市| 板桥市| 承德市| 清徐县| 收藏| 麻栗坡县| 棋牌| 凤凰县| 澄迈县| 四子王旗| 德钦县| 云龙县| 芒康县| 郁南县| 卢氏县| 安新县| 库伦旗| 思南县| 连江县| 安多县| 苗栗市|