版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
Java語言程序設計基礎與實踐課后習題參考答案第一部分認識Java第1章課后習題參考答案1.簡述面向過程與面向對象程序設計的區別。答:面向過程是一種以事件為中心的編程思想,即分析出解決問題所需要的步驟,然后用函數把這些步驟一步一步實現,使用時一次一次調用。面向過程是一種基礎的方法,是自上而下步步求精,講一個復雜的事物按照功能進行拆分,并逐層細化到便于理解和描述的程度,最終形成若干獨立模塊組成的樹形結構,所以面向過程最重要的是模塊化設計思想。面向對象是一種解決問題時整體看待一個實體的思想。它把構成問題的事務分解成各個對象,建立對象的目的不是為了完成一個步驟,而是為了描敘某個事物在整個解決問題的步驟中的行為。2.Java語言的特點有哪些?答:(1)跨平臺性所謂的跨平臺性,是指軟件可以不受計算機硬件和操作系統的約束而在任意計算機環境下正常運行。這是軟件發展的趨勢和編程人員追求的目標。之所以這樣說,是因為計算機硬件的種類繁多,操作系統也各不相同,不同的用戶和公司有自己不同的計算機環境偏好,而軟件為了能在這些不同的環境里正常運行,就需要獨立于這些平臺。而在Java語言中,Java自帶的虛擬機很好地實現了跨平臺性。Java源程序代碼經過編譯后生成二進制的字節碼是與平臺無關的,但是可被Java虛擬機識別的一種機器碼指令。Java虛擬機提供了一個字節碼到底層硬件平臺及操作系統的屏障,使得Java語言具備跨平臺性。(2)面向對象面向對象是指以對象為基本粒度,其下包含屬性和方法。對象的說明用屬性表達,而通過使用方法來操作這個對象。面向對象技術使得應用程序的開發變得簡單易用,節省代碼。Java是一種面向對象的語言,也繼承了面向對象的諸多好處,如代碼擴展、代碼復用等。(3)安全性安全性可以分為四個層面,即語言級安全性、編譯時安全性、運行時安全性、可執行代碼安全性。語言級安全性指Java的數據結構是完整的對象,這些封裝過的數據類型具有安全性。編譯時要進行Java語言和語義的檢查,保證每個變量對應一個相應的值,編譯后生成Java類。運行時Java類需要類加載器載入,并經由字節碼校驗器校驗之后才可以運行。Java類在網絡上使用時,對它的權限進行了設置,保證了被訪問用戶的安全性。(4)多線程多線程在操作系統中已得到了最成功的應用。多線程是指允許一個應用程序同時存在兩個或兩個以上的線程,用于支持事務并發和多任務處理。Java除了內置的多線程技術之外,還定義了一些類、方法等來建立和管理用戶定義的多線程。(5)簡單易用Java源代碼的書寫不拘泥于特定的環境,可以用記事本、文本編輯器等編輯軟件來實現,然后將源文件進行編譯,編譯通過后可直接運行,通過調試則可得到想要的結果。3.Java語言包括哪三種平臺?分別適用于什么場合?答:Java語言包括以下三中平臺:(1)企業版(JavaEE)JavaEE是一種利用Java2平臺來簡化企業解決方案的開發、部署和管理相關的復雜問題的體系結構。J2EE技術的基礎就是核心Java平臺或Java2平臺的標準版,JavaEE不僅鞏固了標準版中的許多優點,例如“編寫一次、隨處運行”的特性、方便存取數據庫的JDBCAPI、CORBA技術以及能夠在Internet應用中保護數據的安全模式等等,同時還提供了對EJB(EnterpriseJavaBeans)、JavaServletsAPI、JSP(JavaServerPages)以及XML技術的全面支持。其最終目的就是成為一個能夠使企業開發者大幅縮短投放市場時間的體系結構。JavaEE體系結構提供中間層集成框架用來滿足無需太多費用而又需要高可用性、高可靠性以及可擴展性的應用的需求。通過提供統一的開發平臺,J2EE降低了開發多層應用的費用和復雜性,同時提供對現有應用程序集成強有力支持,完全支持EJB,有良好的向導支持打包和部署應用,添加目錄支持,增強了安全機制,提高了性能。(2)標準版(JavaSE)JavaSE是Java平臺標準版的簡稱(JavaPlatform,StandardEdition)(alsoknownasJava2Platform),用于開發和部署桌面、服務器以及嵌入設備和實時環境中的Java應用程序。JavaSE包括用于開發JavaWeb服務的類庫,同時,JavaSE為JavaEE提供了基礎。JavaSE(JavaPlatform,StandardEdition,Java標準版)就是基于JDK和JRE的。(3)Micro版(JavaME)JavaME是Java微版的簡稱(JavaPlatform,MicroEdition),是一個技術和規范的集合,它為移動設備(包括消費類產品、嵌入式設備、高級移動設備等)提供了基于Java環境的開發與應用平臺。JavaME目前分為兩類配置,一類是面向小型移動設備的CLDC(ConnectedLimitedDeviceProfile),一類是面向功能更強大的移動設備如智能手機和機頂盒,稱為CDC(ConnectedDeviceProfileCDC)。JavaME有自己的類庫,其中CLDC使用的是專用的Java虛擬機叫做KVM。第2章課后習題參考答案一、簡答題1.簡述如何配置Java開發環境,并在自己計算機上安裝配置Java.參考答案請參考課本P8-P16頁。2.如何下載Eclipse,并進行安裝?答:(1)下載eclipse,地址為/downloads/訪問,選擇符合系統版本的Eclipse。(2)下載后解壓下載的文件。雙擊Eclipse.exe即可進行Java語言的開發。二、編程題1.參考程序(1)示例程序1publicclassExercise01{ publicstaticvoidmain(String[]args) { System.out.println("*"); System.out.println("**"); System.out.println("**"); System.out.println("**"); System.out.println("*"); }}(2)示例程序2publicclassExercise01{ publicstaticvoidmain(String[]args){ inthangshu=5; inthalf=hangshu/2+1; inthalfMore=hangshu/2; for(intk=1;k<=half;k++){ for(inti=1;i<=(half-k);i++){ System.out.print(""); } System.out.print("*"); for(inti=1;i<=((k-2)*2+1);i++){ System.out.print(""); } if(k!=1){ System.out.print("*"); } System.out.println(); } for(intk=halfMore;k>=1;k--){ for(inti=1;i<=(half-k);i++){ System.out.print(""); } System.out.print("*"); for(inti=1;i<=((k-2)*2+1);i++){ System.out.print(""); } if(k!=1){ System.out.print("*"); } System.out.println(); } }}2.參考程序publicclassBook{ publicstaticvoidmain(String[]args) { System.out.println("書店關系銷售系統>客戶信息管理"); System.out.println(); System.out.println("*****************************************"); System.out.println("\t\t\t1.顯示所有客戶信息"); System.out.println("\t\t\t2.添加客戶信息"); System.out.println("\t\t\t3.添加客戶信息"); System.out.println("*****************************************"); System.out.println("請選擇,輸入數字或者按'n'返回上一級菜單"); }}第二部分Java程序設計基礎第3章課后習題參考答案一、選擇題1.C2.D3.C4.D5.C6.D7.D8.A9.A10.D二、編程題1.示例程序如下:publicclassExercise01{ publicstaticvoidmain(String[]args){ Stringbrand="愛國者F928"; doubleweight=12.4; Stringtype="內置鋰電池"; intprice=499; System.out.println("品牌(brand):"+brand); System.out.println("重量(weight):"+weight+"g"); System.out.println("電池類型(type):"+type); System.out.println("價格(price):"+price+"元"); }}2.示例程序如下:importjava.util.Scanner;publicclassExercise02{ publicstaticvoidmain(String[]args){ intnum1,num2,num3; intsum=0; doubleavg; Scannersc=newScanner(System.in); System.out.println("請輸入第一個數:"); num1=sc.nextInt(); System.out.println("請輸入第二個數:"); num2=sc.nextInt(); System.out.println("請輸入第三個數:"); num3=sc.nextInt(); sum=num1+num2+num3; avg=sum/3.0; System.out.println("三個數的和為:"+sum); System.out.println("三個數的平均值為:"+avg); }}3.示例程序參考如下:importjava.util.*;publicclassExercise03{ publicstaticvoidmain(String[]args){ Scannerrd=newScanner(System.in); Stringa="T恤",b="網球鞋",c="網球拍"; doublea1,a2,b1,b2,c1,c2,zj,sj,zq; intjf; System.out.print("請輸入購買T恤數量:"); a1=rd.nextDouble();System.out.print("請輸入購買網球鞋數量:");b1=rd.nextDouble(); System.out.print("請輸入購買網球拍數量:"); c1=rd.nextDouble(); a2=a1*245; b2=b1*570; c2=c1*320; zj=(a1*245+b1*570+c1*320)*0.8; System.out.println("*********消費單*********"); System.out.println("購買物品\t單價\t個數\t金額"); System.out.println(a+"\t"+"¥245\t"+a1+"\t"+a2); System.out.println(b+"\t"+"¥570\t"+b1+"\t"+b2); System.out.println(c+"\t"+"¥320\t"+c1+"\t"+c2);System.out.println(); System.out.println("折扣:8折"); System.out.println("消費總金額¥"+zj); System.out.print("請輸入實際交費金額:"); sj=rd.nextDouble(); System.out.println("實際交費:¥"+sj); zq=sj-zj;System.out.println("找錢:¥"+zq);jf=(int)sj/100*3; System.out.println("本次購物所獲積分是:"+jf); }}第4章課后習題參考答案一、分析程序,寫出運行結果1.2.3.運行結果為:6。4.二、編程題1.示例程序如下:importjava.util.Scanner;publicclassExercise01{ publicstaticvoidmain(String[]args) { intnum1,num2,num3,max; Scannersc=newScanner(System.in); System.out.println("請輸入任意三個整數:"); num1=sc.nextInt(); num2=sc.nextInt(); num3=sc.nextInt(); if(num1>num2) { max=num1; }else max=num2; if(max>num3) { System.out.println("三個數中最大值為:"+max); }else { System.out.println("三個數中最大值為:"+num3); } }}2.示例程序如下:importjava.util.Scanner;publicclassExercise02{ publicstaticvoidmain(String[]args){ Scannersc=newScanner(System.in);System.out.println("請輸入一個三位整數:");intnum=sc.nextInt();intresult=0;while(true){intn=num%10;result=result*10+n;num=num/10;if(num==0){break;}}System.out.println(result); }}3.示例程序如下:publicclassExercise03{ publicstaticvoidmain(String[]args){ for(inti=100;i<=200;i++) { if(i%3!=0) { System.out.print(i+""); } } }}4.參考示例程序如下:publicclassExercise04{ publicstaticvoidmain(String[]args){ intyear=2014;intstudent=80000;while(student<200000){student=(int)(student*(1+0.25));year++;}System.out.println(year+"年,培訓人數達到20萬人");}}5.參考示例程序如下:publicclassExercise05{ publicstaticvoidmain(String[]args){ for(inti=1;i<=9;i++) { for(intj=1;j<=i;j++) { System.out.print(j+"*"+i+"="+i*j+"\t"); } System.out.println(); } }}第5章課后習題參考答案一、選擇題1.C 2.C 3.B 4.C 5.A 6.A二、填空題1.StringStringBuffer2.35三、編程題1.參考示例程序如下:(以整型數組為例)importjava.util.Scanner;publicclassExercise01{ publicstaticvoidmain(String[]args){ int[]arr=newint[5]; Scannersc=newScanner(System.in); System.out.println("請輸入"+arr.length+"個數組元素:"); for(inti=0;i<5;i++) { arr[i]=sc.nextInt(); } System.out.println("數組逆序輸出為:"); for(inti=arr.length-1;i>=0;i--) { System.out.print(arr[i]+""); } }}2.參考示例程序如下:importjava.util.Scanner;publicclassExercise02{ publicstaticvoidmain(String[]args){ int[]arr=newint[5]; Scannersc=newScanner(System.in); System.out.println("請輸入整型數組元素的值:"); intsum=0; doubleavg; for(inti=0;i<arr.length;i++) { arr[i]=sc.nextInt(); sum+=arr[i]; } avg=sum/arr.length; System.out.println("數組元素的和為:"+sum); System.out.println("數組元素的和為:"+avg); }}3.參考示例程序如下:publicclassExercise03{ publicstaticvoidmain(String[]args){ Stringstr="thisisaprogress"; System.out.println(str.split("\\s+").length); }}//\s+則表示匹配任意多個上面的字符第6章課后習題參考答案一、選擇題1.A 2.D 3.C 4.D 5.C二、填空題1.類2.屬性方法3.new4.Object5.構造方法6.protectedfriendlypublic7.Math.abs(n)Math.sqrt(n)Math.pow(x,y)三、判斷題1.√ 2.× 3.× 4.√ 5.√ 6.√ 7.√8.×四、編程題1.參考示例程序如下:voidswap(intnum1,intnum2){ inttmp; tmp=num1; num1=num2; num2=tmp;}2.參考示例程序如下:classStudent{ longid; Stringname; intage; charsex; Stringphone; publicintgetAge(){ returnage; } publicchargetSex(){ returnsex; } publicStringgetPhone(){ returnphone; } publicStringtoString(Stringname,Stringphone) { returnname+":"+phone; } Student(longi,Stringn,inta,chars,Stringp) { id=i; name=n; age=a; sex=s; phone=p; }}第7章課后習題參考答案一、選擇題1~5:BBAAD6~10:BACBA二、填空題1.super2.靜態變量3.返回值類型4.package5.變量覆蓋方法覆蓋方法重載6.最終類最終方法最終變量7.publicprotected默認private8.publicprotected默認private三、判斷題1.√ 2.× 3.√ 4.√ 5.√6.√ 7.√ 8.√ 9.× 10.×四、分析程序,寫出運行結果1.2.五、編程題1.參考示例程序如下:publicclassCircleextendsS{ privatefinaldoublePI=3.14; publicCircle(doubler) { super(); super.r=r; } publicvoidarea() { System.out.println(r*r*PI); } publicstaticvoidmain(String[]args) { Circlec=newCircle(2.5); c.area(); }}classS{ doubler;}2.參考示例程序如下:publicclassShapeextendsAbstractShape{ publicdoublegetArea(doubler) { returnPI*r*r; } publicdoublegetGirth(doubler) { return2*PI*r; } @Override publicdoublegetArea(){ //TODOAuto-generatedmethodstub return0; } @Override publicdoublegetGirth(){ //TODOAuto-generatedmethodstub return0; }}abstractclassAbstractShape{ finaldoublePI=3.1415926; publicabstractdoublegetArea(); publicabstractdoublegetGirth();}3.參考示例程序如下:publicclassTestClass{ publicstaticvoidmain(String[]args){ Multiplicationml=newMultiplication(); inti=2,j=3; System.out.println(i+"與"+j+"的乘積為:"+ml.mul(i,j)); doublex=2.3,y=3.4,z=3.5; System.out.println(x+"與"+y+"的乘積為:"+ml.mul(x,y)); System.out.println(x+"與"+y+"與"+z+"的乘積為:"+ml.mul(x,y,z)); }}classMultiplication{ /*計算兩個整形數的積*/ publicintmul(inti,intj) { returni*j; } /*計算兩個浮點數的積*/ publicdoublemul(doublex,doubley) { returnx*y; } /*計算三個浮點數的積*/ publicdoublemul(doublex,doubley,doublez) { returnx*y*z; } }4.參考示例程序如下:interfaceshape{ publicdoublegetVolume(); }publicclassCylinderimplementsshape{ privatedoubleheight=2.4,r=3.2; privatefinaldoublePI=3.14; publicdoublegetVolume() { doublevolume; volume=PI*r*r*height; returnvolume; }}5.參考示例程序如下:Date類packagecom.DatePackage;publicclassDate{privateintyear,month,day;publicintgetYear(){ returnyear; } publicvoidsetYear(intyear){ this.year=year; } publicintgetMonth(){ returnmonth; } publicvoidsetMonth(intmonth){ this.month=month; } publicintgetDay(){ returnday; } publicvoidsetDay(intday){ this.day=day; } publicDate(inty,intm,intd) { year=y; month=m; day=d; } publicvoidshow() { System.out.println(year+"年"+month+"月"+day+"日"); }}測試類packagecom.TestPackage;importcom.DatePackage.Date;publicclassTestClass{publicstaticvoidmain(String[]args){ Datedate=newDate(2017,2,4); date.show(); }}第8章課后習題參考答案一、選擇題1.B 2.A 3.AD 4.D 5.C二、簡答題1.Exception類異常必須放在多重catch列表最后。2.2343.參考代碼如下:publicclassTest{ publicstaticvoidmain(String[]args) { try{ int[]num=newint[1]; System.out.println(num[1]); }catch(ArrayIndexOutOfBoundsExceptione) { e.printStackTrace(); } } }4.答:從上述圖示可以看到,Thorwable類(表示可拋出)是所有異常和錯誤的超類,兩個直接子類為Error和Exception,分別表示錯誤和異常。其中異常類Exception又分為運行時異常(RuntimeException)和非運行時異常,這兩種異常有很大的區別,也稱之為不檢查異常(UncheckedException)和檢查異常(CheckedException)。5.參考示例程序如下:(1)引入log4j.jar包;(2)新建perties配置文件。配置文件代碼:log4j.appender.file=org.apache.log4j.FileAppenderlog4j.appender.file.File=jbit.loglog4j.appender.file.layout=org.apache.log4j.PatternLayoutlog4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-ddHH:mm:ss}%m%n%l%n(或參見課本156頁的perties文件代碼)測試文件代碼:importorg.apache.log4j.Logger;importorg.apache.log4j.PropertyConfigurator;publicclassTest{ publicstaticvoidmain(String[]args) { Loggerlog=null;try{PropertyConfigurator.configure("bin/perties"); log=Logger.getLogger(Test.class.getName()); int[]num=newint[1]; System.out.println(num[1]); }catch(ArrayIndexOutOfBoundsExceptione) { log.warn("數組越界"); } } }第9章課后習題參考答案1.42.Reader類Writer類3.答:在Java語言中程序所完成的輸入和輸出操作是以“流”(Stream)的形式來實現的。流是在計算機的輸入、輸出操作中流動的數據序列。按流動方向分為輸入流和輸出流。4.(參考答案)過濾流不能直接跟文件打交道,只能通過節點流進行相關的操作。可以從其構造方法中看出:FilterOutputStream(OutputStreamout)需要傳入一個OutputStream。在InputStream和OutputStream的子類中,FilterInputStream和FilterOutputStream是過濾流,其又派生出子類DataInputStream和DataOutputStream數據輸入流和數據輸出流。過濾流的主要特點是在輸入輸出數據同時對所傳輸的數據做指定類型或格式的轉換。5.參考示例代碼如下:importjava.io.*;publicclassExercises0905{ publicstaticvoidmain(String[]args) { StringinputString; intcount; byteinput[]=newbyte[256]; DataInputStreamstdin=newDataInputStream(System.in); BufferedInputStreambufin=newBufferedInputStream(stdin); DataOutputStreamstdout=newDataOutputStream(System.out); BufferedOutputStreambufout=newBufferedOutputStream(stdout); PrintStreamp=newPrintStream(System.out); try{ p.println("請輸入字符串,以Enter結束:"); count=bufin.read(input); p.println("輸入的字符串為:"); bufout.write(input,0,count); bufout.flush(); p.close(); stdin.close(); bufin.close(); stdout.close(); bufout.close(); }catch(IOExceptione) { System.out.println("I/O發生異常"); } }}6.參考示例程序如下:importjava.util.Scanner;publicclassSix{ publicstaticvoidmain(String[]args){ Scannerin=newScanner(System.in); intenglish,comLang,sql,sum; System.out.println("請依次輸入英語,計算機語言,數據庫的成績:"); english=in.nextInt(); comLang=in.nextInt(); sql=in.nextInt(); sum=english+comLang+sql; System.out.println("學生的成績如下:"); System.out.println("英語:"+"\t\t\t"+english); System.out.println("計算機語言:"+"\t\t"+comLang); System.out.println("數據庫:"+"\t\t\t"+sql); System.out.println("總成績:"+"\t\t\t"+sum); }}7.參考示例程序如下:importjava.io.File;importjava.io.FileInputStream;importjava.io.FileNotFoundException;importjava.io.IOException;publicclassSeven{ publicstaticvoidmain(String[]args){ Filefile=newFile("C:/config.sys"); bytebuff[]=newbyte[1024]; if(file.exists()){ System.out.println("文件存在,文件信息如下:"); try{ FileInputStreamfis=newFileInputStream(file); while(fis.read(buff)!=-1){ System.out.println(newString(buff)); } } catch(FileNotFoundExceptione){ e.printStackTrace(); }catch(IOExceptione){ e.printStackTrace(); } } else System.out.println("文件不存在"); }}8.參考示例程序如下:importjava.io.File;importjava.io.FileNotFoundException;importjava.io.FileOutputStream;importjava.io.IOException;importjava.io.InputStream;importjava.io.ObjectInputStream;importjava.io.ObjectOutputStream;importjava.io.Serializable;importjava.util.Scanner;publicclassEight{ publicstaticvoidmain(String[]args)throwsIOException{ Student[]stu=newStudent[5]; Scannerin=newScanner(System.in); Filefile=newFile("D://STUDENT.DAT"); FileOutputStreamfos=newFileOutputStream(file); //將對象序列化為二進制文件 ObjectOutputStreamoos=newObjectOutputStream(fos); System.out.println("請輸入五個學生的成績:"); for(inti=0;i<stu.length;i++){ stu[i]=newStudent(); System.out.println("請依次輸入第"+(i+1)+"個學生的學號,姓名,三科成績:"); stu[i].setId(in.nextInt()); stu[i].setName(in.next()); stu[i].setResult_1(in.nextDouble()); stu[i].setResult_2(in.nextDouble()); stu[i].setResult_3(in.nextDouble()); stu[i].setSum(stu[i].getResult_1()+stu[i].getResult_2()+stu[i].getResult_3()); } oos.writeObject(stu); //關閉流 oos.close(); fos.close(); }}classStudentimplementsSerializable{//序列化的類必須實現這個接口 /** * */ privatestaticfinallongserialVersionUID=1L; privateintid; privateStringname; privatedoubleresult_1; privatedoubleresult_2; privatedoubleresult_3; privatedoublesum; publicintgetId(){ returnid; } publicvoidsetId(intid){ this.id=id; } publicStringgetName(){ returnname; } publicvoidsetName(Stringname){ =name; } publicdoublegetResult_1(){ returnresult_1; } publicvoidsetResult_1(doubleresult_1){ this.result_1=result_1; } publicdoublegetResult_2(){ returnresult_2; } publicvoidsetResult_2(doubleresult_2){ this.result_2=result_2; } publicdoublegetResult_3(){ returnresult_3; } publicvoidsetResult_3(doubleresult_3){ this.result_3=result_3; } publicdoublegetSum(){ returnsum; } publicvoidsetSum(doublesum){ this.sum=sum; }}9.參考示例程序如下:importjava.io.File;importjava.io.FileInputStream;importjava.io.IOException;importjava.io.ObjectInputStream;publicclassNine{ publicstaticvoidmain(String[]args)throwsIOException,ClassNotFoundException{ Filefile=newFile("D://STUDENT.DAT"); Student[]stu=newStudent[5]; FileInputStreamfis=newFileInputStream(file); ObjectInputStreamois=newObjectInputStream(fis); stu=(Student[])ois.readObject(); Studentmax=stu[0]; for(inti=0;i<stu.length;i++) if(max.getSum()<stu[i].getSum()) max=stu[i]; System.out.println("平均分最高的學生是:\n"+max.getId()+ "號學生,姓名是:"+max.getName()+"三科成績:"+max.getResult_1()+"\t" +max.getResult_2()+"\t"+max.getResult_3()); ois.close(); }}10.參考示例程序如下:importjava.io.ObjectInputStream;publicclassTen{ publicstaticvoidmain(String[]args)throwsIOException,ClassNotFoundException{ Filefile=newFile("D://STUDENT.DAT"); Student[]stu=newStudent[5]; FileInputStreamfis=newFileInputStream(file); ObjectInputStreamois=newObjectInputStream(fis); stu=(Student[])ois.readObject(); for(inti=0;i<stu.length;i++){ for(intj=i;j<stu.length;j++){ if(stu[i].getSum()<stu[j].getSum()){ Studentswap=newStudent(); swap=stu[i]; stu[i]=stu[j]; stu[j]=swap; } } } for(inti=0;i<3;i++){ System.out.println(stu[i].getId()+"\t"+stu[i].getName()+"\t"+stu[i].getSum()); } }}第10章課后習題參考答案一、選擇題1.DBECFA2.CEABD3.C二、簡答題1.答:第一與數據庫建立連接;第二向數據庫發送SQL語句;第三處理數據庫返回結果。具體步驟如下:第一步:向驅動程序管理器加載、注冊JDBC驅動程序。第二步:獲得特定的數據庫連接。第三步:得到SQL語句容器,并發送SQL語句。第四步:如果SQL語言有結果集返回的話,處理結果集。第五步:關閉數據庫連接,這一步非常重要,因為數據庫連接是一種非常寶貴的資源,在使用完畢后,必須關閉數據庫連接,應放在finally語句中。2.答:調用該訪問返回一個以字符串指定類名的類的對象。3.答:Statement對象用于執行不帶參數的簡單SQL語句;PreparedStatement對象用于執行帶或不帶IN參數的預編譯SQL語句;4.答:為了確保JDBC資源不在出現異常或錯誤等情況下被不正常關閉,我們應該在使用完JDBC資源之后關閉且釋放它們。JDBC
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 承攬加工協議
- 神經根型頸椎病診療與康復訓練
- 審計專業技術資格(高級)考前押題密卷(完整版)
- 精算師考試精算師考試經典例題(含答案)
- 高級審計師考試模擬卷及解析(帶解析)
- 精算師考試簡答題速成(完整版)
- 人工智能促進證券服務普惠化發展
- 2026 年大學秋季新生開學“錘煉本領提升綜合素養”
- 人工智能與證券市場信息透明度
- 2026 年科學應對極端暴雨科普教育課件
- 初中音樂七年級上冊《美麗的草原我的家》深度鑒賞與跨文化理解教案
- 2026年《醫療器械經營監督管理辦法》培訓試卷(+答案)
- 2026山東臨沂城市職業學院?臨沂城市職業學院招聘專任教師、公共課教師及教輔人員113人考試備考題庫及答案詳解
- 2026年餐飲服務食品安全管理員試題及答案
- GB/T 47950-2026資產管理數據資產登記指南
- 2026湖北武漢市宏泰集團所屬湖北宏泰私募股權基金管理有限公司投資經理崗位招聘6人模擬試卷有完整答案詳解
- 鋼結構大棚拆除施工方案
- 2026版《醫師外出會診管理暫行規定》課件
- 電纜敷設及接線作業指導書培訓
- 中國老年抗中性粒細胞胞漿抗體相關腎小球腎炎治療指南總結2026
- 2026版中華人民共和國生態環境法典深度解析課件
評論
0/150
提交評論