JAVA語言及WWW技術(shù)復(fù)習題_第1頁
JAVA語言及WWW技術(shù)復(fù)習題_第2頁
JAVA語言及WWW技術(shù)復(fù)習題_第3頁
JAVA語言及WWW技術(shù)復(fù)習題_第4頁
JAVA語言及WWW技術(shù)復(fù)習題_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

-.z.2016-2017年第二學(xué)期JAVA語言與技術(shù)復(fù)習題一、填空題Java的三大體系分別是___JavaEE___、____JavaSE__、___JavaME__。Java中的變量可分為兩種數(shù)據(jù)類型,分別是___基本數(shù)據(jù)類型_和_引用數(shù)據(jù)類型_____。在非靜態(tài)成員方法中,可以使用關(guān)鍵字__This____訪問類的其它非靜態(tài)成員。被static關(guān)鍵字修飾的成員變量被稱為_靜態(tài)變量__,它可以被該類所有的實例對象共享。編譯Java程序需要使用__javac____命令。Java中的程序代碼都必須在一個類中定義,類使用___class___關(guān)鍵字來定義。若int[]a={12,45,34,46,23};,則a[2]=__34____。面向?qū)ο蟮娜筇卣魇莀_封裝、__繼承__和多態(tài)_。定義在類中的變量被稱為___成員變量_,定義在方法中的變量被稱為__局部變量_。異常的捕獲通常由try、catch兩部分組成,___try___代碼塊用來存放可能發(fā)生異常,__catch__代碼塊用來處理產(chǎn)生的異常。String類中用于返回字符串字符個數(shù)的方法是___length()__。JDK中提供了一系列可以存儲任意對象的類,統(tǒng)稱為_集合___。在Java中,能實現(xiàn)線程間通信的流是_管道流___。System.out是__PrintStream__類的對象,稱為標準輸出流,調(diào)用System類的_setOut(PrintStreamout)__方法可以實現(xiàn)標準輸出流的重定向。在程序開發(fā)中,要想將一個包中的類導(dǎo)入到當前程序中,可以使用_import__關(guān)鍵字。System類中所提供的屬性和方法都是_靜態(tài)___的,想要引用這些屬性和方法,直接使用System類調(diào)用即可。Collection有兩個子接口分別是List和Set,List集合的特點是有序、可重復(fù),Set集合的特點是無序、不可重復(fù)。InputStreamReader類是用于將_字節(jié)流___轉(zhuǎn)換為_字符流___。在Java中,byte類型數(shù)據(jù)占___1___個字節(jié),short類型數(shù)據(jù)占__2____個字節(jié),int類型數(shù)據(jù)占___4___個字節(jié),long類型數(shù)據(jù)占__8____個字節(jié)。當一個對象被當成垃圾從存中釋放時,它的_finalize()_____方法會被自動調(diào)用。二、選擇題1.下面哪種類型的文件可以在Java虛擬機中運行?A、.javaB、.jreC、.e*eD、.class2.以下關(guān)于變量的說法錯誤的是?A、變量名必須是一個有效的標識符B、變量在定義時可以沒有初始值C、變量一旦被定義,在程序中的任何位置都可以被訪問D、在程序中,可以將一個byte類型的值賦給一個int類型的變量,不需要特殊聲明3.請先閱讀下面的代碼。int*=1;inty=2;if(*%2==0){ y++;}else{ y--;}System.out.println("y="+y);上面一段程序運行結(jié)束時,變量y的值為下列哪一項?A、1B、2C、3D、switch語句4.在以下什么情況下,構(gòu)造方法會被調(diào)用?A、類定義時B、創(chuàng)建對象時C、調(diào)用對象方法時D、使用對象的變量時5.請先閱讀下面的代碼publicclassTest{publicTest(){ System.out.println("構(gòu)造方法一被調(diào)用了");}publicTest(int*){ this(); System.out.println("構(gòu)造方法二被調(diào)用了");}publicTest(booleanb){ this(1); System.out.println("構(gòu)造方法三被調(diào)用了");}publicstaticvoidmain(String[]args){ Testtest=newTest(true); }}上面程序的運行結(jié)果為下列哪一項?A、構(gòu)造方法一被調(diào)用了 B、構(gòu)造方法二被調(diào)用了C、構(gòu)造方法三被調(diào)用了D、以上三個選項之和6.類中的一個成員方法被下面哪個修飾符修飾,該方法只能在本類被訪問?A、publicB、protectedC、privateD、default7.下面的程序段執(zhí)行后,輸出的結(jié)果是以下哪個選項?StringBufferbuf=newStringBuffer("Beijing2008");buf.insert(7,"");System.out.println(buf.toString());A、Beijing2008B、Beijing2008C、Beijing2008D、Beijing*20088.Java語言中,集合類都位于哪個包中?A、java.utilB、java.langC、java.arrayD、java.collections9.以下選項中,哪個是File類delete()方法返回值的類型?A、booleanB、intC、StringD、Integer10.以下對File類的publicbooleaisFile()方法的描述,哪個是正確的?A、判斷該File對象所對應(yīng)的是否是文件。B、判斷該File對象所對應(yīng)的是否是目錄。C、返回文件的最后修改時間。D、在當前目錄下生成指定的目錄。11.Java屬于以下哪種語言?A、機器語言B、匯編語言C、高級語言D、以上都不對12.假設(shè)int*=2,三元表達式*>0"*+1:5的運行結(jié)果是以下哪一個?A、0B、2C、3D、513.在類的繼承關(guān)系中,需要遵循以下哪個繼承原則?A、多重B、單一C、雙重D、不能繼承14.編譯運行下面的程序,結(jié)果是什么?publicclassA{ publicstaticvoidmain(String[]args){ Bb=newB(); b.test(); } voidtest(){ System.out.print("A"); }}classBe*tendsA{ voidtest(){ super.test(); System.out.print("B"); }}A、產(chǎn)生編譯錯誤B、代碼可以編譯運行,并輸出結(jié)果ABC、代碼可以編譯運行,但沒有輸出D、編譯沒有錯誤,但會產(chǎn)生運行時異常15.以下都是Math類的常用方法,其中用于計算絕對值的方法是哪個?A、ceil()B、floor()C、abs()D、random()16.閱讀下面的程序:publicclasstest

{

publicstaticvoidmain(Stringargs[])

{

inti;floatf=2.3f;doubled=2.7;i=((int)Math.ceil(f))*((int)Math.round(d));System.out.println(i);}}程序執(zhí)行后,運行結(jié)果為以下哪個選項?A、9B、5C、6D、6.117.使用Iterator時,判斷是否存在下一個元素可以使用以下哪個方法?A、ne*t()B、hash()C、hasPrevious()D、hasNe*t()18.類的定義必須包含在以下哪種符號之間?A、方括號[]B、花括號{}C、雙引號“”D、圓括號()19.要產(chǎn)生[20,999]之間的隨機整數(shù)可以使用以下哪個表達式?A.(int)(20+Math.random()*97)B.20+(int)(Math.random()*980)C.(int)Math.random()*999D.20+(int)Math.random()*98020.先閱讀下面的程序片段:Stringstr1=newString("java");Stringstr2=newString("java");StringBufferstr3=newStringBuffer("java");對于上述定義的變量,以下表達式的值為true的是哪個?A、str1==str2;B、str1.equals(str2);C、str1==str3;D、以上都不對21.在程序開發(fā)中,經(jīng)常會使用以下哪個類來存儲程序中所需的配置?A、HashMapB、TreeSetC、PropertiesD、TreeMap22.要想集合中保存的元素沒有重復(fù)并且按照一定的順序排列,可以使用以下哪個集合?A、LinkedListB、ArrayListC、hashSetD、TreeSet三、簡答題簡述&&與&的區(qū)別并舉例說明。如果使用“&”在表達式之間進行連接,則無論任何情況,“&”兩邊的表達式都會參與計算。如果使用“&&”進行連接,當“&&”左邊的表達式為false,則不會執(zhí)行其右邊的表達式。例如定義int*=2,y=0;booleanb=*<y&*/2>0表達是會發(fā)生被0除異常,因為*/y的表達式執(zhí)行了。而booleanb=*<y&*/2>0是不會出現(xiàn)這種異常的,因為*<y為false,表達式*/y不會執(zhí)行。什么是方法重載?方法重載指的是在一個類中可以聲明多個同名的方法,而方法中參數(shù)的個數(shù)或者數(shù)據(jù)類型不一致。調(diào)用這些同名的方法時,JVM會根據(jù)實際參數(shù)的不同綁定到不同的方法。構(gòu)造方法和普通的成員方法有什么區(qū)別?構(gòu)造方法是類的一個特殊成員,它會在類實例化對象時被自動調(diào)用。而普通方法只有在使用的時候才會被調(diào)用。在定義構(gòu)造方法時要求方法名與類名相同、在方法名的前面沒有返回值類型的聲明、在方法中不能使用return語句返回一個值抽象類和接口的區(qū)別?在Java中,使用abstract關(guān)鍵字修飾的類稱之為抽象類。抽象類是不能被實例化的,通常需要寫一個子類來繼承抽象類,同時實例化子類來獲得該類的對象。抽象類通常用于表示一種抽象的概念。接口可以說是一種特殊的抽象類,接口中只能定義常量和抽象方法。由于接口的特殊性,在定義時需要使用interface關(guān)鍵字。String和StringBuffer有什么區(qū)別?String類是不可變類,即字符串值一旦初始化后就不可能改變。StringBuffer是可變字符串類,類似String的緩沖區(qū),可以修改字符串的值。簡述Java的特點。面向?qū)ο?、跨平臺性、健壯性、安全性、可移植性、多線程性、動態(tài)性等。什么是多態(tài)?多態(tài)意味著一個對象有著多種形態(tài),可以在特定的情況下,表現(xiàn)不同的狀態(tài),從而對應(yīng)著不同的屬性和方法。簡單的說,多態(tài)就是使用父類類型的變量引用子類對象,根據(jù)被引用子類對象的特性,程序會得到不同的運行效果。集合中的List、Set、Map有什么區(qū)別?List的特點是元素有序、元素可重復(fù)。List接口的主要實現(xiàn)類有ArrayList和LinkedList。Set的特點是元素無序、元素不可重復(fù)。Set接口的主要實現(xiàn)類有HashSet和TreeSet。Map的特點是存儲的元素是鍵(Key)、值(Value)映射關(guān)系,元素都是成對出現(xiàn)的。Map接口的主要實現(xiàn)類有HashMap和TreeMap。9.請說說Collection和Collections的有什么區(qū)別?Collection是一個單例集合接口。它提供了對集合對象進行基本操作的通用方法。Collections是一個工具類。它包含各種有關(guān)集合操作的方法。四、程序題1.請編寫程序,實現(xiàn)計算“1+3+5+7+…+99”的值。publicclassTest01{ publicstaticvoidmain(String[]args){ intsum=0; for(inti=1;i<100;i++){ if(i%2!=0) sum+=i; } System.out.println(sum); }}2.請按照以下要求設(shè)計一個學(xué)生類Student,并進行測試。要求如下:1)Student類中包含、成績兩個屬性2)分別給這兩個屬性定義兩個方法,一個方法用于設(shè)置值,另一個方法用于獲取值.3)Student類中定義一個無參的構(gòu)造方法和一個接收兩個參數(shù)的構(gòu)造方法,兩個參數(shù)分別為和成績屬性賦值4)在測試類中創(chuàng)建兩個Student對象,一個使用無參的構(gòu)造方法,然后調(diào)用方法給和成績賦值,一個使用有參的構(gòu)造方法,在構(gòu)造方法中給和成績賦值classStudent{ privateStringname; privatedoublegrade; publicStudent(){ } publicStudent(Stringname,doublegrade){ =name; this.grade=grade; } publicStringgetName(){ returnname; } publicvoidsetName(Stringname){ =name; } publicdoublegetGrade(){ returngrade; } publicvoidsetGrade(doublegrade){ this.grade=grade; }}publicclassTest01{ publicstaticvoidmain(String[]args){ Studentstu1=newStudent(); stu1.setName("zhangsan"); stu1.setGrade(99); Studentstu2=newStudent("lisi",100); }}.3.在HashSet集合中添加三個Person對象,把相同的人當做同一個人,禁止重復(fù)添加。提示:Person類中定義name和age屬性,重寫hashCode()方法和equals()方法,針對Person類的name屬性進行比較,如果name相同,hashCode()方法

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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

提交評論