![計算機等級考試二級java模擬題測試題4套帶答案.docx_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/b79a6676-d02c-4a0b-8418-8080dcfd4ee2/b79a6676-d02c-4a0b-8418-8080dcfd4ee21.gif)
![計算機等級考試二級java模擬題測試題4套帶答案.docx_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/b79a6676-d02c-4a0b-8418-8080dcfd4ee2/b79a6676-d02c-4a0b-8418-8080dcfd4ee22.gif)
![計算機等級考試二級java模擬題測試題4套帶答案.docx_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/b79a6676-d02c-4a0b-8418-8080dcfd4ee2/b79a6676-d02c-4a0b-8418-8080dcfd4ee23.gif)
![計算機等級考試二級java模擬題測試題4套帶答案.docx_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/b79a6676-d02c-4a0b-8418-8080dcfd4ee2/b79a6676-d02c-4a0b-8418-8080dcfd4ee24.gif)
![計算機等級考試二級java模擬題測試題4套帶答案.docx_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/b79a6676-d02c-4a0b-8418-8080dcfd4ee2/b79a6676-d02c-4a0b-8418-8080dcfd4ee25.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、計算機等級考試二級java模擬題11. float型floatf=3.4是否正確?答:不正確,應(yīng)為floatf=3.4f2. 當一個對象被當作參數(shù)傳遞到一個方法后,此方法可改變這個對象的屬性,并可返回變化后的結(jié)果,那么這里到底是值傳遞還是引用傳遞?答:是引用傳遞。3. 在java中一個類被聲明為final類型,表示了什么意思?答:表示該類不能被繼承,意味著它不能再派生出新的子類,不能作為父類被繼承,是頂級類。4. Error與Exception有什么區(qū)別?答:Error(錯誤)表示系統(tǒng)級的錯誤和程序不必處理的異常,是java運行環(huán)境中的內(nèi)部錯誤或者硬件問題,比如,內(nèi)存資源不足等,對于這種錯誤,
2、程序基本無能為力,除了退出運行外別無選擇。Exception(違例)表示需要捕捉或者需要程序進行處理的異常,它處理的是因為程序設(shè)計的瑕疵而引起的問題或者在外的輸入等引起的一般性問題,是程序必須處理的。5. 談?wù)刦inal,finally的區(qū)別。答:final是修飾符(關(guān)鍵字)如果一個類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個類不能既被聲明為abstract,又被聲明為final。將變量或方法聲明為final,可以保證它們在使用中不被改變。被聲明為final的變量必須在聲明時給定初值,而在以后的引用中只能讀取,不可修改。被聲明為final的方法也同樣只能使用
3、,不能重載。Finally是在異常處理時提供finally塊來執(zhí)行任何清除操作。如果拋出一個異常,那么相匹配的catch子句就會執(zhí)行,然后控制就會進入finally塊(如果有的話),只要有finally語句塊,無論程序如何運行,它都必然被執(zhí)行到。6. Strings=newString(Hxyzn);創(chuàng)建了幾個StringObject?答:創(chuàng)建了兩個,一個字符對象,一個引用對象7. shortsi=1;si=si+1;有什么錯?shorts1=1;s1+=1;有什么錯?答:兩個錯誤都是一樣的,后者只是加法的寫法不一樣,兩個錯誤都是因為si是short型而1是整型相加后數(shù)據(jù)類型就變?yōu)檎土?,與s
4、i定義為short型有矛盾,必須進行強制類型轉(zhuǎn)換才正確。8. 數(shù)組有沒有l(wèi)ength。這個方法?String有沒有l(wèi)ength()這個方法?答:數(shù)組沒有,String有。9. Overload和Override的區(qū)別答:方法的覆蓋(Overriding)和重載(Overloading)是Java多態(tài)性的不同表現(xiàn)。覆蓋(Overriding)是父類與子類之間多態(tài)性的一種表現(xiàn),重載(Overloading)是一個類中多態(tài)性的一種表現(xiàn)。如果在子類中定義某方法與其父類有相同的名稱和參數(shù),我們說該方法被覆蓋System.out.println(i+”“+getName();Try(Sleep(int)(
5、Math.random()*1000);Catch(InterruptedExceptione)()System.out.println("DONE!”+getName();14答案Importjava.awt.*Importjava.util.Date;Importjava.applet.Applet;PublicclassTestextendsAppletimplementsRunnable(Threadclockthread;Publicvoidstart(If(clockThread=null)(clockThread=newThread(this);clockThread.
6、start();Publicvoidrun()While(clockThread!=null)(repaint();TryclockThread.sleep(lOOO);catch(InterruptedExceptione)()Publicvoidpaint(Graphicsg)(Datetime=newDate();Stringstr=time.getHours()4-:"+time.getMinute()+":"+time.getSecond();g.drawString(str,5,10);clockThread二null;計算機等級考試二級java模擬題
7、31.ObjectlnputStream的父類是。A.)InputStreamB) OutputStreamC) ReaderD) Writer2. 在java中,用來處理字符的基本存儲單位的。A) 單字節(jié)B) 雙字節(jié)C) 3字節(jié)D) 4字節(jié)3. ZipInputStream所在的包是A) .java.ioB) java.utilC) java.io.zipD) java.util.zip4. readFloat()所在類是。A) DatalnputB)InputStreamReaderC) DataInputStreamD) BufferedInputStream5. 同時支持readlnt
8、()和write()方法的類是A) RandomAccessFileB) FileC) ReadD) Write6. 讀一個壓縮文件,該壓縮文件對象參數(shù)的類是.A) FileB) FileInputStreamC) ZipInputStreamD) BufferedReader7. JarlnputStream所屬流是.A) FileInputStreamB) BufferedInputStreamC) ZipInputStreamD) DataInputStream8. 如果想保留對象數(shù)據(jù),首先需要打開的對象是A)ObjectOutputStreamB)FileOutputStreamC)B
9、ufferedOutputStreamD)ZipOutputStream9. 下列File類操作中錯誤的是A)文件的建立B)文件的刪除C)文件的讀寫D)文件的屬性10. 在計算CRC校驗和的程序中使用java.nio的新特性后,速度提高約23倍,所用技術(shù)是.A)校驗和B)文件瑣C)字符編碼解碼D)內(nèi)存映射11.BufferedReader閱讀文本行的方法是.12. 以下是一個對數(shù)據(jù)文件進行緩沖輸入操作的句子,在語句的下劃線處,請?zhí)钌线m當?shù)膬?nèi)容:DatalnlputStreamdin=newDataInputStream(new(newFileInputStream("employee
10、.dat");13. 正如Java的流類中也有不屬于java.io包的,比如:"摘要”輸入流類DigestI叩utStream屬于java.security包,同樣,ZipInputStream屬于接口。14. 代表一個隨機訪問文件的類是類。15. 如果對象需要進行輸入,著該對象必須實現(xiàn)接口。16. 閱讀一個網(wǎng)頁中的html文件,尋找和相匹配的字符串。這就要將java.io.InputStreamReader和java.util.regex包的類和Matcher類相結(jié)合。17. 請編寫一個完整的java程序,將一個文件(例如empllyee.dat)的屬性置為只讀模式。18
11、. 請編寫一個完整的java程序,向一個文件(例如empllyee.dat)寫入10個字符串。19. 請編寫一個完整的java程序,將source.txt中的“這是在源文件中的數(shù)據(jù)”讀出來顯示在屏幕上,并且寫入到destination.txt文件中。20. 請試在以下程序的處填上適當?shù)恼Z句。(選作)有時可將一個對象寫在ByteArrayOutputStream流中,再從該流中讀入同樣一個對象到ByteArrayOutputStream中,這樣也可以深層次克隆一個對象。Importjava.io.*;PublicclassSerialCloneTestlPublicstaticvoidmain(
12、Stringargs)(Studentharry=newStudent("HarryHacker"Computerv);Studentharry2=(Student)harry.c!one();System.out.println(harry);System.out.println(harry2)ClassSerialCloneableimplementsCloneable,SerializablePublicObjectclone()Try./請?zhí)钌线m當?shù)恼Z句,完成Student對象harry的克隆。Catch(Exceptione)(Returnnull;ClassSt
13、udentextendsSerialCloneable(PublicStudent(Stringn,Stringm)Name=n;Major=m;PublicStringtoString()ReturngetClass().getName()+,name="+name+",major="+major+")PrivateStringname;PrivateStringmajor;)答案kA2B3D4C5A6B7C8A9C10D11.readerLine()12.BufferedInputStream()13.java.util.zip14.RandomAc
14、cessFile15.Serializable16.Pattern17.代碼如下:Importjava.io.*;ClassSetReadOnlyText(Publicstaticvoidmain(Stringargs)(If(args.length!=1)(System.err.println("usage:javaMain”);System.exit(-l);If(newFile(argsO).setReadOnly()System.out.println(usetFiletoReadONlymodev);ElseSystem.out.println(uCannotsettore
15、ad-onlymode,);)18 .代碼如下:Importjava.io.*;PublicclassWriteCharPublicstaticvoidmain(StringargsJ)(Inti;Byteb=newbyte10;Try(DataOutputStreamout=newDataOutputString(newFileOutputStream("employee.dat”);For(i=0;ivl0;i+)(Bi=(byte)(48+i);Out.write(b);Out.close();Catch(Exceptione)19 .代碼如下:Importjava.io.*;
16、PublicclassReadWriteChar(Publicstaticvoidmain(Stringargs)(Strings=newStringO;Try(BufferedReaderin=newBufferedReader(newFileReader("source.txt");PrintWriterout=newPrintWriter(newFileWriter("destination.txt");Out.println("Thefollowingisfromsource,);While(s=in.readLine()!=null)
17、System.out.println(s);Out.println(s)In.close();Out.close();Catch(Exceptione)(.代碼如下:Importjava.io.*;PublicclassSerialCloneTestl(Publicstaticvoidmain(Stringargs)(Studentharry=newStudent(“HarryHacker”Computern);Studentharry2=(Student)harry.clone();System.out.println(harry);System.out.println(harry2);Cl
18、assSerialCloneableimplementsCloneable,Serializable(PublicObjectclone()ByteArrayOutputStreambout=newByteArrayOutStream();ObjectOutputStreamout=newObjectOutputStream(bout);Out.writeObject(this);Out.close();ByteArraylnputStreambin=newByteArraylnputStream(bout.toByteArrayO);ObjectlnputStreamin=newObject
19、lnputStream(bin);Objectret=in.readObject();In.closeQ;Returnret;Catch(Exceptione)Returnnull;ClassStudentextentSerialCloneable(PublicStudent(Stringn,Stringm)(Name=n;Major=m;PublicStringtoString()Returngetclass().getName()+"name="+major+"”PrivateStringname;PrivateStringmajor;)計算機等級考試二級ja
20、va模擬題41算法的時間復(fù)雜度是指算法執(zhí)行過程中所需要的基本運算次數(shù)2設(shè)一棵完全二叉樹共有699個結(jié)點,則在該二叉樹中的葉子結(jié)點數(shù)為_350o3結(jié)構(gòu)化程序設(shè)計主要強調(diào)的是程序的易讀性o4在軟件生命周期中,能準確地確定軟件系統(tǒng)必須做什么和必須具備哪些功能的階段是_D、需求分析5數(shù)據(jù)流圖用于抽象描述一個軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下列圖符名標識的圖符不屬于數(shù)據(jù)流圖合法圖符的是控制流O6軟件需求分析階段的工作,可以分為四個方面:需求獲取、需求分析、編寫需求規(guī)格說明書以及需求評審O7下述關(guān)于數(shù)據(jù)庫系統(tǒng)的敘述中正確的是數(shù)據(jù)庫系統(tǒng)減少了數(shù)據(jù)冗余o8數(shù)據(jù)庫設(shè)計包括兩個方面的設(shè)計內(nèi)容,它們是
21、概念設(shè)計和邏輯設(shè)計o91以下B不是Java中有效的關(guān)鍵字。A、constB、NULLC、falseD、this10Panel默認的布局管理器是A、FlowLayout。11下面B方法與applet的顯示無關(guān)。A、update()B、draw()C、repaint()D、paint()12下列內(nèi)容是異常的含義。A、程序的語法錯B、程序編譯或運行中所發(fā)生的異常事件C、程序預(yù)定義好的異常事件D、程序編譯錯誤13當方法遇到異常又不知如何處理時,下列C做法是正確的。A、捕獲異常B、拋出異常C、聲明異常D、嵌套異常14計算機中的流是DoA、流動的字節(jié)B、流動的對象C、流動的文件D、流動的數(shù)據(jù)緩沖區(qū)15當檢
22、索一個壓縮文件時,首先要建立壓縮文件輸入流對象。該對象BoA、以選中的壓縮文件為參數(shù)B、以FilelnputStream對象為參數(shù)C、以InputStreamReader對象為參數(shù)D、以BufferedReader對象為參數(shù)B進程或線程D、不可預(yù)知這些類就必須實現(xiàn)A。B、java.io.Extemalizable接口D、DataOutput接口AoC、菜單D、容器B進程或線程D、不可預(yù)知這些類就必須實現(xiàn)A。B、java.io.Extemalizable接口D、DataOutput接口AoC、菜單D、容器16A、17A、C、c、一個JavaApplication運行后,在系統(tǒng)中是作為一個線程B、
23、進程要串行化某些類的對象,Serializable接口java.io.Datalnput接口18Swing構(gòu)件的程序不具有A、本地代碼B、標簽軟件的調(diào)試方法主要有:強行排錯法、回朔法_和原因排除法。數(shù)據(jù)庫系統(tǒng)的三級模式分別為概念級模式、內(nèi)部級模式與外部級模式。數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,它通常包括5個部分,即數(shù)據(jù)項、數(shù)據(jù)結(jié)構(gòu)、數(shù)數(shù)據(jù)存儲和處理過程。19結(jié)構(gòu)化程序設(shè)計方法的主要原則可以概括為自頂向下、逐步求精、模塊化和限制使用goto語句。202122據(jù)流、23 Java語言的各種數(shù)據(jù)類型之間提供兩種轉(zhuǎn)換:強制轉(zhuǎn)換和自動轉(zhuǎn)換。24 Java語言中,臨界區(qū)用Synchronized關(guān)鍵字標識。解
24、析:1通常,將軟件產(chǎn)品從提出、實現(xiàn)、使用維護到停止使用退役的過程稱為軟件生命周期。也就是說,軟件產(chǎn)品從考慮其概念開始,到該軟件產(chǎn)品不能使用為止的整個時期都屬于軟件生命周期。軟件生命周期的主要活動階段為:(1)可行性研究和計劃制定。確定待開發(fā)軟件系統(tǒng)的開發(fā)目標和總的要求,給出它的功能、性能、可靠性以及接口等方面的可能方案,制定完成開發(fā)任務(wù)的實施計劃。(2)需求分析。對待開發(fā)軟件提出的需求進行分析并給出詳細定義,即準確地確定軟件系統(tǒng)的功能。編寫軟件規(guī)格說明書及初步的用戶手冊,提交評審。(3)軟件設(shè)計。系統(tǒng)設(shè)計人員和程序設(shè)計人員應(yīng)該在反復(fù)理解軟件需求的基礎(chǔ)上,給出軟件的結(jié)構(gòu)、模塊的劃分、功能的分配以
25、及處理流程。(4)軟件實現(xiàn)。把軟件設(shè)計轉(zhuǎn)換成計算機可以接受的程序代碼。即完成源程序的編碼,編寫用戶手冊、操作手冊等面向用戶的文檔,編寫單元測試計劃。(5)軟件測試。在設(shè)計測試用例的基礎(chǔ)上,檢驗軟件的各個組成部分。編寫測試分析報告。(6)運行和維護。將已交付的軟件投入運行,并在運行使用中不斷地維護,根據(jù)新提出的需求進行必要而且可能的擴充和刪改。2數(shù)據(jù)流圖從數(shù)據(jù)傳遞和加工的角度,來刻畫數(shù)據(jù)流從輸入到輸出的移動變換過程。數(shù)據(jù)流圖中的主要圖形元素有:加工(轉(zhuǎn)換)、數(shù)據(jù)流、存儲文件(數(shù)據(jù)源)、源和潭。3軟件的需求分析階段的工作,可以概括為四個方面:需求獲取、需求分析、編寫需求規(guī)格說明書和需求評審。需求獲
26、取的目的是確定對目標系統(tǒng)的各方面需求。涉及到的主要任務(wù)是建立獲取用戶需求的方法框架,并支持和監(jiān)控需求獲取的過程。需求分析是對獲取的需求進行分析和綜合,最終給出系統(tǒng)的解決方案和目標系統(tǒng)的邏輯模型。編寫需求規(guī)格說明書作為需求分析的階段成果,可以為用戶、分析人員和設(shè)計人員之間的交流提供方便,可以直接支持目標軟件系統(tǒng)的確認,又可以作為控制軟件開發(fā)進程的依據(jù)。需求評審是對需求分析階段的工作進行復(fù)審,驗證需求文檔的一致性、可行性、完整性和有效性。4標識符命名規(guī)則為:1、標識符是以字母、下劃線、美元符($)作為首字符的字符串序列。在首字符后面可以跟字母、下劃線、美元符和數(shù)字。2、標識符區(qū)分大小寫。3、標識符
27、的字符數(shù)目沒有限制,但為便于閱讀和記憶,不宜太長。5數(shù)組中l(wèi)ength是屬性,而字符串中是通過length()方法獲得字符長度的,6對于二元算術(shù)運算符,其表達式結(jié)果的類型歸納為以下幾類情況:(1) 操作數(shù)全為整型,那么,只要其中有一個為long型,則表達式結(jié)果為long型。(2) 兩個操作數(shù)全是byte型或short型,表達式結(jié)果也為int型。(3) 操作數(shù)為浮點型,只要其中有一個為double型,表達式結(jié)果就是double型。(4) 兩個操作數(shù)全是float型或其中一個是float型,而另外一個是整型,則表達式結(jié)果為float型。7 BorderLayout是Window,Frame和Dia
28、log的默認布局管理器。BorderLayout布局管理器把容器分成5個區(qū)域:North,South,East,West和Center,每個區(qū)域只能放置一個構(gòu)件。8 FlowLayout是Panel和Applet的默認布局管理器。構(gòu)件在容器中的放置規(guī)律是從上到下、從左到右進行放置,如果容器足夠?qū)?,第一個構(gòu)件先添加到容器中第一行的最左邊,后續(xù)的構(gòu)件依次添加到上一個構(gòu)件的右邊,如果當前行已放置不下該構(gòu)件,則放置到下一行的最左邊。構(gòu)件的大小不隨容器的大小改變而改變。9Applet顯示相關(guān)的3個方法:(1) 、paint。方法:Applet的paint。方法具體執(zhí)行Applet的繪制,該方法定義如下:
29、publicvoidpaint(Graphicsg)paint。方法有一個參數(shù)g是Graphics類的實例,該實例對象由瀏覽器生成,它包含了Applet的圖形上下文信息,通過它向Applet中顯示信息,該對象相當于Applet的畫筆。在調(diào)用paint()*法時,由瀏覽器將該對象傳遞給paint(法。(2) 、叩date。方法:publicvoidupdate(Graphicsg)用于更新Applet的顯示。該方法將首先清除背景,再調(diào)用paint。方法完成Applet的具體繪制。(3) 、repaint。方法:publicvoidrepaint()repaint。方法主要用于Applet的重新顯
30、示,它調(diào)用update()方法實現(xiàn)對Applet的更新。10流,最早從C語言中引入的。其可以看成是一個流動的數(shù)據(jù)緩沖區(qū)。數(shù)據(jù)從數(shù)據(jù)源方向經(jīng)過緩沖區(qū)流向數(shù)據(jù)的目的地。在傳送的過程中,其傳送方式是串行的。在Java中的java.io包中定義了Java中常見流的接口與類。其中包括兩個最基本的流的抽象類,它們分別是OutputStream與InputStreamo其余的流都分別從這兩個基本類中繼承而來。11在java.io包中提供了對壓縮文件進行操作的能力。它是通過壓縮文件輸入流與壓縮文件輸出流來實現(xiàn)的,其分別繼承自InflaterlnputStream與DeflaterOutputStream。在創(chuàng)
31、建壓縮文件輸入流時,其初始化參數(shù)是一個FilelnputStream類的實例。12在先左后右的原則下,根據(jù)訪問根結(jié)點的次序,二叉樹的遍歷可以分為三種:前序遍歷、中序遍歷和后序遍歷。前序遍歷是指在訪問根結(jié)點、遍歷左子樹與遍歷右子樹這三者中,首先訪問根結(jié)點,然后遍歷左子樹,最后遍歷右子樹;并且遍歷左、右子樹時,仍然先訪問根結(jié)點,然后遍歷左子樹,最后遍歷右子樹。中序遍歷指在訪問根結(jié)點、遍歷左子樹與遍歷右子樹這三者中,首先遍歷左子樹,然后訪問根結(jié)點,最后遍歷右子樹;并且遍歷左、右子樹時,仍然先遍歷左子樹,然后訪問根結(jié)點,最后遍歷右子樹。后序遍歷指在訪問根結(jié)點、遍歷左子樹與遍歷右子樹這三者中,首先遍歷右
32、子樹,然后訪問根結(jié)點,最后遍歷左子樹;并且遍歷左、右子樹時,仍然先遍歷右子樹,然后訪問根結(jié)點,最后遍歷左子樹。13調(diào)式的關(guān)鍵在于推斷程序內(nèi)部的錯誤位置及原因。其主要的調(diào)試方法有:強行排錯法、溯法和原因排除法。強行排錯法:是傳統(tǒng)的調(diào)試方法,其過程可概括為:設(shè)置斷點、程序暫停、觀察程序狀態(tài)、繼續(xù)運行程序。這是目前使用較多、效率較低的調(diào)試方法?;厮莘ǎ涸摲椒ㄟm合于小規(guī)模程序的排錯。即一旦發(fā)現(xiàn)了錯誤,先分析錯誤征兆,確定最先發(fā)現(xiàn)”癥狀”的位置。然后,從發(fā)現(xiàn)”癥狀”的地方開始,沿程序的控制流程,逆向跟蹤源程序代碼,直到找到錯誤根源或確定錯誤產(chǎn)生的原因。原因排除法:是通過演繹和歸納,以及二分法來實現(xiàn)的。數(shù)
33、據(jù)庫系統(tǒng)在其內(nèi)部具有三級模式及二級映射,三級模式分別是概念級模式、內(nèi)部級模式和外部級模式。14概念模式是數(shù)據(jù)庫系統(tǒng)中全局數(shù)據(jù)邏輯結(jié)構(gòu)的描述,是全體用戶(應(yīng)用)公共數(shù)據(jù)視圖。內(nèi)模式又稱物理模式,它給出了數(shù)據(jù)庫物理存儲結(jié)構(gòu)與物理存取方法,如數(shù)據(jù)存儲的文件結(jié)構(gòu)、索引、集簇及hash等存取方式與存取路徑,內(nèi)模式的物理性主要體現(xiàn)在操作系統(tǒng)及文件級上,它還未深入到設(shè)備級上(如磁盤及磁盤操作)。外模式也稱子模式或用戶模式,它是用戶的數(shù)據(jù)視圖,也就是用戶所見到的數(shù)據(jù)模式,它由概念模式推導(dǎo)而出。數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,它通常包括5個部分,即數(shù)據(jù)項,是數(shù)據(jù)的最小單位;數(shù)據(jù)結(jié)構(gòu),是若干數(shù)據(jù)項有意義的集合;數(shù)據(jù)
34、流,可以是數(shù)據(jù)項,也可以是數(shù)據(jù)結(jié)構(gòu),表示某一處理過程的輸入或輸出;數(shù)據(jù)存儲,處理過程中存取的數(shù)據(jù),常常是手工憑證、手工文檔或計算機文件;處理過程。15在Java語言中,異常機制是:一旦出現(xiàn)異常,可以由運行的方法或虛擬機生成一個異常對象,它包含異常事件的類型以及發(fā)生異常時程序的狀態(tài)等信息。16異常對象從產(chǎn)生到被傳遞提交給Java運行系統(tǒng)的過程稱為拋出(throw)異常。一個程序中單獨的、并發(fā)的線程對同一個對象進行訪問的代碼段,稱為臨界區(qū)。在Java語言中,臨界區(qū)可以是一個語句塊或是一個方法,并且用“synchronized”關(guān)鍵字標識。(Overriding)o子類的對象使用這個方法時,將調(diào)用子
35、類中的定義,對它而言,父類中的定義如同被“屏蔽”了。如果在一個類中定義了多個同名的方法,它們或有不同的參數(shù)個數(shù)或有不同的參數(shù)類型,則稱為方法的重載(Overloading)oOverloaded的方法可以改變返回值的類型。10. abstractclass和interface有什么區(qū)別?答:聲明方法的存在而不去實現(xiàn)它的類被叫做抽象類(abstractclass),它用于要創(chuàng)建一個體現(xiàn)某些基本行為的類,并為該類聲明方法,但不能在該類中實現(xiàn)該類的情況。不能創(chuàng)建abstract類的實例。然而可以創(chuàng)建一個變量,其類型是一個抽象類,并讓它指向具體子類的一個實例。不能有抽象構(gòu)造函數(shù)或抽象靜態(tài)方法。Abst
36、ract類的子類為它們父類中的所有抽象方法提供實現(xiàn),否則它們也是抽象類為。取而代之,在子類中實現(xiàn)該方法。知道其行為的其它類可以在類中實現(xiàn)這些方法接口(interface)是抽象類的變體。在接口中,所有方法都是抽象的。多繼承性可通過實現(xiàn)這樣的接口而獲得。接口中的所有方法都是抽象的,沒有一個有程序體。接口只可以定義staticfinal成員變量。接口的實現(xiàn)與子類相似,除了該實現(xiàn)類不能從接口定義中繼承行為。當類實現(xiàn)特殊接口時,它定義(即將程序體給予)所有這種接口的方法。然后,它可以在實現(xiàn)了該接口的類的任何對象上調(diào)用接口的方法。由于有抽象類,它允許使用接口名作為引用變量的類型。通常的動態(tài)聯(lián)編將生效。引
37、用可以轉(zhuǎn)換到接口類型或從接口類型轉(zhuǎn)換,instanceof運算符可以用來決定某對象的類是否實現(xiàn)了接口11. 構(gòu)造器Constructor是否可被override?答:可以。12. 是否可以繼承String類?答:String類是final類所以不可以繼承。13. 題目如下:父類:publicclassFatherClass(publicFatherClass()(System.out.println(nFatherClassCreate'1);)子類:publicclassChildClassextendsFatherClasspublicChildClassQSystem.out.p
38、rintln(nChildCIassCreate");publicstaticvoidmain(String|args)FatherClassfc=newFatherClass();ChildClasscc=newChildClass();請問輸出結(jié)果為:FatherClassCreate+FatherClassCreateChildClassCreate14. publicclassOuterClass(privatedoubledl=1.0;/insertcodehereline3從下列選項中選擇兩個正確的答案放在line3中(CE)A. classInnerOne(public
39、staticdoublemethoda()(returndl;B. publicclassInnerOne(staticdoublemethoda()(returndl;C. privateclassInnerOne(doublemethoda()(returndl;D. staticclassInnerOne(protecteddoublemethoda()(returndl;)E. abstractclassInnerOne(publicabstractdoublemethoda();STRING與STRINGBUFFER的區(qū)另U答:STRING的長度是不可變的,一旦一個String對象被
40、創(chuàng)建,包含在這個實例中的內(nèi)容(“字符串”)不可以被更改,直至這個對象被銷毀,因此,指向一個String對象的變量實質(zhì)上是一個常量,String對象也被稱為常量對象;STRINGBUFFER的長度是可變的,可以通過StringBuffer的append。、insert()>reverse()>setCharAt()>setLength()等方法,口J以對這個字符串中的內(nèi)容修改。如果你對字符串中的內(nèi)容經(jīng)常進行操作,特別是內(nèi)容要修改時,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法15. JAVA類實現(xiàn)序例化的
41、方法是?答:JAVA類要實現(xiàn)序列化,對應(yīng)的類必須先實現(xiàn)Serializable和Externalizable這兩種接口,然后就可以調(diào)用ObjectOutputStream的witeObject()方法來保存對象以及通過ObjeatlnputStream的readObjeact()方法來讀取保存的對象。16. Collection框架中實現(xiàn)比較要實現(xiàn)什么接口?答:要實現(xiàn)Comparable接口,并實現(xiàn)這個接口的唯一方法cpmparaTo(),接受一個Object對象,在這個方法中可以定義對象的排序規(guī)則。17. 介紹JAVA中的Collection框架結(jié)構(gòu),并畫出來oCollection<&
42、gt;Set<>ListHashSetTreesetArrayListVector18. 編程題:列出某文件夾下的所有文件(文件夾從命令行輸入)而昆:importjava.io.*;publicclasslistFile(publicstaticvoidmain(Stringargs)(Strings="”;InputStreamReaderir=newInputStreamReader(System.in);BufferedReaderin=newBufferedReader(ir);try(s=in.readLine();Filef=newFile(s);FilelJ
43、files=f.listFiles();for(inti=0;iif(filesi.isFile()System.out.printing文件:n+filesi);else(System.out.printing目錄:"+filesi);)in.closeQ;catch(lOExceptione)(e.printStackTrace();)19. 編程題::寫一個滿足Singleton模式的類出來publicclassSingletonTestprivatestaticSingletonTestsp;privateSingletonTest()()publicstaticSingle
44、tonTestgetlnstance()if(sp=null)(sp=newSingletonTest();returnsp;20. 編程:編寫一個截取字符串的函數(shù),輸入為一個字符串和字節(jié)數(shù),輸出為按字節(jié)截取的字符串。但是要保證漢字不被截半個,如“我ABC"4,應(yīng)該截為“我AB”,輸入“我ABC漢DEF”,6,應(yīng)該輸出為“我ABC”而不是“我ABC+漢的半個”角軍:importjava.io.*;classinterceptstring(StringinterceptStr;intinterceptByte;publicinterceptString(Stringstr,intbyt
45、es)(interceptStr=str;interceptByte=bytes;System.out.printing字符串為:"'+interceptStr+”'字節(jié)數(shù)為:n+interceptByte);)publicvoidinterceptlt()intinterceptCount;interceptCount=(interceptStr.length()%interceptByte=0)?(interceptStr.length()/jnterceptByte):(interceptStr.length()/interceptByte+1);System.
46、out.printing截取后斷數(shù)為:H+interceptCount);for(inti=l;i<=interceptCount;i+)(if(i=interceptCount)(System.out.println(interceptStr.substring(i-l)*interceptByte,interceptStr.length();elseSystem.out.println(interceptStr.substring(i-l)*interceptByte,(i*interceptByte);)publicstaticvoidmain(String|args)String
47、s="InputStreamReaderir=newInputStreamReader(System.in);BufferedReaderin=newBufferedReader(ir);try(s=in.readLine();interceptstringss=newinterceptString(s,4);erceptlt();in.close();catch(lOExceptione)(e.printStackTrace();)21. 多線程有兒種實現(xiàn)方法,都是什么?同步有兒種實現(xiàn)方法,都是什么?答:多線程有三種實現(xiàn)方法,分別為: 實現(xiàn)Runnable接口,覆蓋Ru
48、n()方法。 繼承Thread,覆蓋Run。方法。 繼承TimerTask,覆蓋Run()方法。同步的實現(xiàn)是在方法前加synchronized,在調(diào)用wait。和notify。22. 請說出你所知道的線程同步的方法答:1.synchronized方法:通過在方法聲明中加入synchronized關(guān)鍵字來聲明synchronized方法。2. synchronized塊:通過synchronized關(guān)鍵字來聲明synchronized塊。23. 當一個線程進入一個對象的一個synchronized方法后,其它線程是否可進入此對象的其它方法?答:不可以。synchronized方法都必須獲得調(diào)用該
49、方法的類實例的鎖方能執(zhí)行,否則所屬線程阻塞,方法一旦執(zhí)行,就獨占該鎖,直到從該方法返回時才將鎖釋放,此后被阻塞的線程才能獲得該鎖,重新進入可執(zhí)行狀態(tài)。24. 用JAVASOCKET編程,實現(xiàn)簡單的Echo功能如:客戶端從鍵盤輸入hi(當用戶輸出exit退出程序),服務(wù)端響應(yīng)為hi(服務(wù)器要求為多線程)解:服務(wù)器程序:importjava.io.*;.*;publicclassMyServerextendsThread(privateSocketcq;publicMyServer(Socketcq)(this.cq=cq;publicvoidrun()tryBufferedReaderin=ne
50、wBufferedReader(newInputStreamReader(cq.getInputStream();PrintWriterout=newPrintWriter(cq.getOutputStream();while(true)Stringstr=in.readLine();System.out.println(str);out.println(Hmessage:”+str);out.flushQ;if(str.equals(nexitn)break;catch(IOExceptione)(System.out.println(e.message。);publicstaticvoid
51、main(Stringargs)throwsIOException(ServerSocketserver=newServerSocket(8009);while(true)(Sockets=server.accept。;newMyServer(s).start();)客戶端程序:.*;importjava.io.*;publicclassMyClient(publicstaticvoidmain(Stringargs)throwsException(Socketserver=newSocket(nlocalhost",8009);BufferedReaderin=newBufferedReader(newInputStreamReader(server.getInputStream();PrintWriterout=newPrintWriter(server.getOutputStream();BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in);while(true)(Stringstr=br.readLine();out.println(str);out.flush();if(str.equals(nexitn)(break;System.out.println(in.readLi
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國燈飾金邊條數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國棒材餐具數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國密集檔案柜數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國半封閉氟利昂機組數(shù)據(jù)監(jiān)測研究報告
- 2025-2030年廚電產(chǎn)品社群運營企業(yè)制定與實施新質(zhì)生產(chǎn)力戰(zhàn)略研究報告
- 2025-2030年按摩器APP控制行業(yè)跨境出海戰(zhàn)略研究報告
- 2025-2030年歷史文化深度纜車游行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報告
- 2025-2030年戶外用品個性化定制平臺企業(yè)制定與實施新質(zhì)生產(chǎn)力戰(zhàn)略研究報告
- 2025-2030年戶外露營折疊浴盆企業(yè)制定與實施新質(zhì)生產(chǎn)力戰(zhàn)略研究報告
- 電子工藝實習報告(15篇)
- 幼兒園大班數(shù)學PPT課件2、3、4的分解與組成
- 遙感圖像的分析解譯(共34張PPT)
- “花卉栽培”培訓(xùn)教學計劃
- API682機械密封沖洗方案(中文)課件
- 產(chǎn)品立項管理辦法
- 七年級上冊英語完形填空、閱讀理解綜合訓(xùn)練100題(含參考答案)
- DB35T 1345-2013蘭壽系列金魚養(yǎng)殖技術(shù)規(guī)范
- 祛痘產(chǎn)品原料配方與消費者祛痘方案選擇建議
- 年產(chǎn)一萬噸蓖麻項目可行性論證報告
- 儒林外史每回概括
- GB/T 1995-1998石油產(chǎn)品粘度指數(shù)計算法
評論
0/150
提交評論