java第八次實驗:異常處理_第1頁
java第八次實驗:異常處理_第2頁
java第八次實驗:異常處理_第3頁
java第八次實驗:異常處理_第4頁
java第八次實驗:異常處理_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第八次實驗:異常處理一、實驗目的了解異常的概念以及如何定義、拋出和捕捉處理異常。二、實驗要求編寫一個程序,用來捕獲各種類型的異常編寫一個程序,用來說明異常處理塊中各個語句塊的作用熟悉異常的類型及其產(chǎn)生的原因三、實驗內(nèi)容(一)Java的異常類型識別請看以下定義Strings=null;(1)if((s

!=null)&(s.length()>0))

;(2)if((s

!=null)&&(s.length()>0))

;(3)if((s

==null)|(s.length()==0))

;(4)if((s

==null)||(s.length()==0))

;2.請在實驗報告中指出上面四個語句中,哪幾個會引發(fā)異常?會引發(fā)哪種類型的異常?(二)捕獲并處理各種類型的異常1.編寫ExceptionTest.java程序文件,源代碼如下。

importjava.io.*;

publicclassExceptionTest{

publicstaticvoidmain(Stringargs[]){

for(inti=0;i<4;i++){

intk;

try{

switch(i){

case0:

intzero=0;

k=911/zero;

break;

case1:

intb[]=null;

k=b[0];

break;

case2:

intc[]=newint[2];

k=c[9];

break;

case3:

charch="abc".charAt(99);

break;

}

}catch(Exceptione){

System.out.println("\nTestcase#"+i+"\n");

System.out.println(e);

}

}

}

}2.編譯、運行3.根據(jù)運行結(jié)果,請在實驗報告中說明程序運行中總共捕捉了幾個異常,并指出每個異常各自屬于哪種類型的異常?(三)了解異常處理模塊中各個語句塊的功能1.編寫TryTest.java程序文件,源代碼如下。

importjava.io.*;

publicclassTryTest{

publicTryTest(){

try{

inta[]=newint[2];

a[4]=3;

System.out.println("Afterhandlingexceptionreturnhere?");

}catch(IndexOutOfBoundsExceptione){

System.err.println("exceptionmsg:"+e.getMessage());

System.err.println("exceptionstring:"+e.toString());

e.printStackTrace();

}finally{

System.out.println("-------------------");

System.out.println("finally");

}

System.out.println("Noexception?");

}

publicstaticvoidmain(Stringargs[]){

newTryTest();

}

}

2.編譯、運行3.根據(jù)運行結(jié)果,將程序的運行結(jié)果寫在實驗報告中。4.請在實驗報告中指出程序中的語句System.out.println("Afterhandlingexceptionreturnhere?");有沒有被執(zhí)行?(四)選做題:字符流的輸入/輸出importjava.io.BufferedReader;importjava.io.File;importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.io.IOException;importjava.io.InputStreamReader;publicclassT{publicstaticvoidmain(String[]args)throwsIOException{//讀入文件FileInputStreamfis=newFileInputStream(newFile("data.txt"));BufferedReaderbr=newBufferedReader(newInputStreamReader(fis));StringBuffersb=newStringBuffer();Stringstr=br.readLine();while(str!=null){sb.append(str);str=br.readLine();}br.close();//統(tǒng)計文件的字符數(shù)、非空白字符數(shù)和單詞to的個數(shù)str=sb.toString();intcount=str.length();//總共的字符數(shù)String[]words=str.split("");intcount1=0;//非空白字符數(shù)intcount2=0;//to的個數(shù)for(Stringword:words){count1+=word.length();if(word.equals("to")){count2++;}}System.out.println("文件中總共有"+count+"個字符!");System.out.println("文件中總共有"+count1+"個非空白字符!");System.out.println("文件中總共有"+count2+"個單詞to!");//文件中的所有大寫字母改成小寫字母str=str.toLowerCase();//轉(zhuǎn)換后的內(nèi)容寫入文件FileOutputStreamfos=newFileOutputStream("joke.txt");fos.write(str.getBytes());fos.close();}}有下面的文本文件“Early-Precaution.txt”,(1)計算這篇短文的字符數(shù)(含空白)共有多少?importjava.io.*;publicclassf{publicstaticvoidmain(String[]args){ FileInputStreams=null;try{s=newFileInputStream("D:\\java\\ss.txt");}catch(FileNotFoundExceptione){System.out.println("找不到指定文件");}try{intb=0,num=0;while((b=s.read())!=-1){num++;}s.close();System.out.println("共讀取了"+num+"字節(jié)");}catch(IOExceptionee){System.out.println("文件讀取錯誤");}}}importjava.io.*;publicclassf{publicstaticvoidmain(String[]args)throwsException{ RandomAccessFiles=newRandomAccessFile("D:\\java\

\ss.txt","r");doublem=s.length();System.out.println(m);}}(2)若不含空白,這篇短文共有多少個字符?importjava.io.*;publicclassf{publicstaticvoidmain(String[]args)throws

IOException{ FileReaders=newFileReader("D:\\java\\ss.txt");intnum2=0;inta=0;intb=0;do{a=s.read();if(a!=32)num2++;}while(a!=-1);System.out.println(num2);}}(3)統(tǒng)計這篇短文用了多少個單詞“to”。importjava.io.*;publicclassf{publicstaticvoidmain(String[]args)throws

IOException{ FileReaderfileIn=null;try{fileIn=newFileReader("D:\\java\\ss.txt");}catch(FileNotFoundExceptione){System.out.println("找不到文件,程序?qū)⒔K止!");}char[]cc=newchar[1024];try{fileIn.read(cc);}catch(IOExceptione){System.out.println("文件讀入錯誤!");fileIn.close();}Stringstr1=newString(cc);String[]strArray=newString[1024];strArray=str1.split("to");intcount=strArray.length;System.out.println(""+count);}}(4)將這篇短文內(nèi)所有大寫字母改成小寫,并將更改后的短文寫到文本文件”joke.txt”里。importjava.io.*;publicclassf{publicstaticvoidmain(String[]args)throws

IOException{ FileReadera=newFileReader("D:\\java\\ss.txt");BufferedReaderm=newBufferedReader(a);StringBuffersb=newStringBuffer();Strings=m.readLine();while(s!=null){sb.append(s);s=m.readLine();}m.close();s=sb.toString();s=s.toLowerCase();FileOutputStreamb=newFileOutputStream("D:\\java\

\aa.txt");b.write(s.getBytes());b.close();}}TherewasanAmericancouplewhohadnochildren,sotheywantedtoadoptachild.Finally,anorphanagecontactedthem,saying,"Wehaveababyforadoption.It'saRussianorphan."Thecouplewasdelightedandwenttobringthebabyhome.Onthewayhome,theystoppedbyauniversitytoenrollinaRussiancourse."WhydoyouwanttolearnRussian?TheEnglishthatwespeakisaverygoodlanguage,"theuniversitysecretaryasked."Well,wejustadoptedaRussianbaby.WhenhebeginstospeakRussianinafewyears,weareafraidthatwemightnotbeabletounderstandhim,"thecouplereplied.(五)(選做題)編寫程序,判斷用戶由鍵盤輸入的數(shù)是否為素數(shù)。importjava.io.*;importstaticjava.lang.Math.sqrt;importjava.util.*;publicclassf{publicstaticvoidmain(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論