Java面向?qū)ο筮x擇題的示例分析

這篇文章主要為大家展示了“Java面向?qū)ο筮x擇題的示例分析”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學習一下“Java面向?qū)ο筮x擇題的示例分析”這篇文章吧。

商南網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,商南網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為商南1000+提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢,請找那個售后服務(wù)好的商南做網(wǎng)站的公司定做!

1.下列程序的執(zhí)行,說法錯誤的是 ( ABC )

public class MultiCatch  {
  public static void main(String args[]){
    try{
      int a=args.length;
      int b=42/a;    //10行
      int c[]={1};
      c[42]=99;
      System.out.println("b="+b);
    }catch(ArithmeticException e){           
      System.out.println("除0異常:"+e);       // 15行
    }catch(ArrayIndexOutOfBoundsException e) {
      System.out.println("數(shù)組超越邊界異常:"+e);   // 19行
    }
  }
}

A、程序?qū)⑤敵龅?5行的異常信息
B、程序第10行出錯
C、程序?qū)⑤敵觥眀=42”
D、程序?qū)⑤敵龅?5或者19行的異常信息

筆記:首先分析A選項,它說第15行將會輸出異常信息,那我們先看下整個程序,int a =args.length 這一句是獲取args數(shù)組的長度,這個地方也許很多人都不清楚,都認為這里就是空的,也就是長度為0,那么肯定會拋出異常的,但是其實這個main中的這個數(shù)組是可以賦值的(這里大家可以百度一下),這個賦值是很特殊的,所以A不對,不一定會拋出異常。

同樣B也是一樣的道理。

我們看C、程序?qū)⑤敵觥眀=42”。很顯然如果args數(shù)組真為0,那么他會跳過System.out.println(“b=”+b);直接進入catch語句拋出異常,所以不一定會輸出42。

看D、程序?qū)⑤敵龅?5或者19行的異常信息,很顯然數(shù)組越界是百分之百會報錯的,但是不一定會有除0異常,所以D對。

2. 此方法返回值是多少(B )

public static int divide(){
    int i = 3;
    try {
      int a = 10/0;
      return i;
    } catch (Exception e) {
      i = 4;
      return i;
    }finally{
      i = 5;
    }
  }

A.3
B.4
C.5
D.報異常錯誤

分析:這個題確實有點坑,但是return掌握完全 就沒問題了,相信大部分人選C,但實際答案確實B。我們先一步一步分析,首先try中的肯定會拋出異常,于是到了int a =10\0 的時候就直接跳到了catch語句中,此時i被賦值為4,并且此時return 返回 i值,我們都知道finally的語句中是最后一定會執(zhí)行的,但是我們在catch中把 i 給返回了,其他的任何賦值都沒用!??!

所以選B。

3。對于catch子句的排列,下列哪種是正確的( B )

A、父類在先,子類在后
B、子類在先,父類在后
C、有繼承關(guān)系的異常不能在同一個try程序段內(nèi)
D、先有子類,其他如何排列都無關(guān)

分析:我舉兩個

像底下這種,是可以的

public class MultiCatch  {
public static void main(String args[]){
try{
。。。。此處省略
}catch(ArithmeticException e){       //子類異常    
System.out.println("除0異常:"+e);       
}catch(Exception e) {
System.out.println("異常:"+e);   //父類異常
}
}
}

像底下這種就不行,回報錯,因為Exception是很大的一個類,基本所有異常都繼承于它,有了它就可以處理所有的異常,所以導致后面寫的就沒有意義,所以是錯的

public class MultiCatch  {
public static void main(String args[]){
try{
。。。。此處省略
}catch(Exception e){       //父類異常    
System.out.println("異常:"+e);       
}catch(ArithmeticException e) {
System.out.println("除0異常:"+e);   //子類異常
}
}
}

以上是“Java面向?qū)ο筮x擇題的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

分享文章:Java面向?qū)ο筮x擇題的示例分析
瀏覽路徑:http://muchs.cn/article40/ijdieo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、網(wǎng)站策劃、網(wǎng)站設(shè)計營銷型網(wǎng)站建設(shè)、品牌網(wǎng)站制作、網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)