




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1 .Java有那些基本數(shù)據(jù)類型,String是不是基本數(shù)據(jù)類型,他們有何區(qū)別。Java語(yǔ)言提供了八種基本類型:六種數(shù)字類型(四個(gè)整數(shù)型,兩個(gè)浮點(diǎn)型)字節(jié)型byte8位短整型short16位整型int32位長(zhǎng)整型long64位單精度f(wàn)loat32位雙精度double64位一種字符類型字符型char8位還有一種布爾型布爾型:boolean8位可存儲(chǔ)"True"和"false"。String本身就是一個(gè)對(duì)象而不是基本數(shù)據(jù)類型,String的變量名是對(duì)String類的引用。2 .字符串的操作:寫一個(gè)方法,實(shí)現(xiàn)字符串的反轉(zhuǎn),如:輸入abc,輸出cbapublic
2、staticStringreverse(Strings)intlength=s.length();StringBufferresult=newStringBuffer(length);for(inti=length-1;i>=0;i-)result.append(s.charAt(i);returnresult.toString();寫一個(gè)方法,實(shí)現(xiàn)字符串的替換,如:輸入bbbwlirbbb,輸出bbbhhtccc。Strings="bbbwlirbbb"s.replaceAll("wlirbbb","hhtccc");3 .數(shù)
3、據(jù)類型之間的轉(zhuǎn)換如何將數(shù)值型字符轉(zhuǎn)換為數(shù)字(Integer,Double)使用Integer.parseInt()和Double.parseDouble()方法。如何將數(shù)字轉(zhuǎn)換為字符classmyinta=12;Labellabel=newLabel();label.setText(String.valueOf(a);如何取小數(shù)點(diǎn)前兩位,并四舍五入。System.out.println("四舍五入取整:(3.856)="+newBigDecimal(i).setScale(2,BigDecimal.ROUND_HALF_UP);4 .日期和時(shí)間如何取得年月日,小時(shí)分秒Dat
4、edat=newDate();dat.getYear();dat.getMonth();dat.getDay();dat.getHours();dat.getMinutes();dat.getSeconds();如何取得從1970年到現(xiàn)在的毫秒數(shù)longnow=dat.getTime();如何獲取某個(gè)日期是當(dāng)月的最后一天DateFormatedf=DateFormate.getInstance();df.Format(dat);如何格式化日期DateFormatedf=DateFormate.getInstance();df.Format(dat);5 .數(shù)組和集合數(shù)組與集合的區(qū)別:一:數(shù)組聲
5、明了它容納的元素的類型,而集合不聲明。這是由于集合以object形式來(lái)存儲(chǔ)它們的元素。二:一個(gè)數(shù)組實(shí)例具有固定的大小,不能伸縮。集合則可根據(jù)需要?jiǎng)討B(tài)改變大小。三:數(shù)組是一種可讀/可寫數(shù)據(jù)結(jié)構(gòu)沒(méi)有辦法創(chuàng)建一個(gè)只讀數(shù)組。然而可以使用集合提供的ReadOnly方只讀方式來(lái)使用集合。該方法將返回一個(gè)集合的只讀版本。6 .文件和目錄(I/O)操作如何列出某個(gè)目錄下的所有文件如何列出某個(gè)目錄下的所有子目錄判斷一個(gè)文件或目錄是否存在如何讀寫文件importjava.io.BufferedReader;importjava.io.File;importjava.io.FileInputStream;impor
6、tjava.io.FileReader;importjava.io.FileWriter;importjava.io.IOException;importjava.io.InputStreamReader;importjava.io.PrintWriter;publicclassFileOpreatepublicstaticvoidmain(Stringargs)FileOpreatefo=newFileOpreate();try文件的寫入/*String口testStr=newString50;for(inti=0;i<testStr.length;i+)testStri="
7、我的測(cè)t焉數(shù)據(jù)00"+i;fo.writeFile("D:","test.txt",testStr);*/文件的寫入/*Stringstr="測(cè)試"fo.writeFile("D:","test001.txt”,str);*/創(chuàng)建或者刪除文件/*if(fo.createAndDeleteFile("D:","test001.txt")(fo.createAndDeleteFile("D:","test002.txt"
8、);*/創(chuàng)建或者刪除文件夾/*fo.createAndDeleteFolder("D:","2009-07-06");*/輸出一個(gè)文件內(nèi)的文件名稱/*fo.readFolderByFile("D:");*/判斷一個(gè)文件是否是空的/*fo.fileIsNull("D:","test002.txt");*/讀取全部的文件內(nèi)容/*fo.readAllFile("D:","test.txt");*/一行一行讀取文件內(nèi)容fo.readLineFile("D
9、:","test.txt");catch(Exceptione)(e.printStackTrace();7 .Java多態(tài)的實(shí)現(xiàn)(繼承、重載、覆蓋)多態(tài)可分為:1)編譯多態(tài):主要是體現(xiàn)在重載,系統(tǒng)在編譯時(shí)就能確定調(diào)用重載函數(shù)的哪個(gè)版本。2)運(yùn)行多態(tài):主要體現(xiàn)在OO設(shè)計(jì)的繼承性上,子類的對(duì)象也是父類的對(duì)象,即上溯造型,所以子類對(duì)象可以作為父類對(duì)象使用,父類的對(duì)象變量可以指向子類對(duì)象。因此通過(guò)一個(gè)父類發(fā)出的方法調(diào)用可能執(zhí)行的是方法在父類中的實(shí)現(xiàn),也可能是某個(gè)子類中的實(shí)現(xiàn),它是由運(yùn)行時(shí)刻具體的對(duì)象類型決定的。8 .編碼轉(zhuǎn)換,怎樣實(shí)現(xiàn)將GB2312編碼的字符串轉(zhuǎn)換為IS
10、O-8859-1編碼的字符串。Stringstr=newString("字符串".getBytes("GB2312"),"ISO-8859-1");9 .使用StringBuffer類與String類進(jìn)行字符串連接時(shí)有何區(qū)別?JAVA平臺(tái)提供了兩個(gè)類:String和StringBuffer,它們可以儲(chǔ)存和操作字符串,即包含多個(gè)字符的字符數(shù)據(jù)。這個(gè)String類提供了數(shù)值不可改變的字符串。而這個(gè)StringBuffer類提供的字符串進(jìn)行修改。當(dāng)你知道字符數(shù)據(jù)要改變的時(shí)候你就可以使用StringBuffer。典型地,你可以使用String
11、Buffers來(lái)動(dòng)態(tài)構(gòu)造字符數(shù)據(jù)。10 .談?wù)刦inal,finally,finalize的區(qū)別。final用于聲明屬性,方法和類,分別表示屬性不可變,方法不可覆蓋,類不可繼承。finally是異常處理語(yǔ)句結(jié)構(gòu)的一部分,表示總是執(zhí)行。finalize是Object類的一個(gè)方法,在垃圾收集器執(zhí)行的時(shí)候會(huì)調(diào)用被回收對(duì)象的此方法,可以覆蓋此方法提供垃圾收集時(shí)的其他資源回收,例如關(guān)閉文件等。ll.Strings=newString("xyz");創(chuàng)建了幾個(gè)StringObject?兩個(gè),一個(gè)是strings,另一個(gè)是"xyz"。12 .Java有沒(méi)有g(shù)oto?g
12、oto是java中的保留字,現(xiàn)在沒(méi)有在java中使用。13 .數(shù)組有沒(méi)有l(wèi)ength()這個(gè)方法?String有沒(méi)有l(wèi)ength()這個(gè)方法?數(shù)組沒(méi)有l(wèi)ength()這個(gè)方法,有l(wèi)ength的屬性。String有l(wèi)ength()這個(gè)方法。14.Overload和Override的區(qū)別。override(重寫)1)方法名、參數(shù)、返回值相同。2)子類方法不能縮小父類方法的訪問(wèn)權(quán)限。3)子類方法不能拋出比父類方法更多的異常(但子類方法可以不拋出異常)。4)存在于父類和子類之間。5)方法被定義為final不能被重寫。overload(重載)1)參數(shù)類型、個(gè)數(shù)、順序至少有一個(gè)不相同。2)不能重載只有返回
13、值不同的方法名。3)存在于父類和子類、同類中。15 .abstractclas喇interface有什么區(qū)另1J?Interface只能有成員常量,只能是方法的聲明;而abstractclass可以有成員變量,可以聲明普通方法和抽象方法。聲明方法的存在而不去實(shí)現(xiàn)它的類被叫做抽象類(abstractclass),它用于要?jiǎng)?chuàng)建一個(gè)體現(xiàn)某些基本行為的類,并為該類聲明方法,但不能在該類中實(shí)現(xiàn)該類的情況。不能創(chuàng)建abstract類的實(shí)例。然而可以創(chuàng)建一個(gè)變量,其類型是一個(gè)抽象類,并讓它指向具體子類的一個(gè)實(shí)例。不能有抽象構(gòu)造函數(shù)或抽象靜態(tài)方法。Abstract類的子類為它們父類中的所有抽象方法提供實(shí)現(xiàn),否
14、則它們也是抽象類為。取而代之,在子類中實(shí)現(xiàn)該方法。知道其行為的其它類可以在類中實(shí)現(xiàn)這些方法。接口(interface)是抽象類的變體。在接口中,所有方法都是抽象的。多繼承性可通過(guò)實(shí)現(xiàn)這樣的接口而獲得。接口中的所有方法都是抽象的,沒(méi)有一個(gè)有程序體。接口只可以定義staticfinal成員變量。接口的實(shí)現(xiàn)與子類相似,除了該實(shí)現(xiàn)類不能從接口定義中繼承行為。當(dāng)類實(shí)現(xiàn)特殊接口時(shí),它定義(即將程序體給予)所有這種接口的方法。然后,它可以在實(shí)現(xiàn)了該接口的類的任何對(duì)象上調(diào)用接口的方法。由于有抽象類,它允許使用接口名作為引用變量的類型。通常的動(dòng)態(tài)聯(lián)編將生效。引用可以轉(zhuǎn)換到接口類型或從接口類型轉(zhuǎn)換,instanc
15、eof運(yùn)算符可以用來(lái)決定某對(duì)象的類是否實(shí)現(xiàn)了接口。16 .是否可以繼承String類?String類是final類故不可以繼承。17 .面向?qū)ο蟮奶卣饔心男┓矫妫?)抽象:抽象就是忽略一個(gè)主題中與當(dāng)前目標(biāo)無(wú)關(guān)的那些方面,以便更充分地注意與當(dāng)前目標(biāo)有關(guān)的方面。抽象并不打算了解全部問(wèn)題,而只是選擇其中的一部分,暫時(shí)不用部分細(xì)節(jié)。抽象包括兩個(gè)方面,一是過(guò)程抽象,二是數(shù)據(jù)抽象。2)繼承:繼承是一種聯(lián)結(jié)類的層次模型,并且允許和鼓勵(lì)類的重用,它提供了一種明確表述共性的方法。對(duì)象的一個(gè)新類可以從現(xiàn)有的類中派生,這個(gè)過(guò)程稱為類繼承。新類繼承了原始類的特性,新類稱為原始類的派生類(子類),而原始類稱為新類的基類
16、(父類)c派生類可以從它的基類那里繼承方法和實(shí)例變量,并且類可以修改或增加新的方法使之更適合特殊的需要。3)封裝:封裝是把過(guò)程和數(shù)據(jù)包圍起來(lái),對(duì)數(shù)據(jù)的訪問(wèn)只能通過(guò)已定義的界面。面向?qū)ο笥?jì)算始于這個(gè)基本概念,即現(xiàn)實(shí)世界可以被描繪成一系列完全自治、封裝的對(duì)象,這些對(duì)象通過(guò)一個(gè)受保護(hù)的接口訪問(wèn)其他對(duì)象。4)多態(tài)性:多態(tài)性是指允許不同類的對(duì)象對(duì)同一消息作出響應(yīng)。多態(tài)性包括參數(shù)化多態(tài)性和包含多態(tài)性。多態(tài)性語(yǔ)言具有靈活、抽象、行為共享、代碼共享的優(yōu)勢(shì),很好的解決了應(yīng)用程序函數(shù)同名問(wèn)題。1.1 int和Integer有什么區(qū)別?Java提供兩種不同的類型:引用類型和原始類型(或內(nèi)置類型)。Int是java的
17、原始數(shù)據(jù)類型,Integer是java為int提供的封裝類。Java為每個(gè)原始類型提供了封裝類。原始類型封裝類booleanBooleancharCharacterbyteByteshortShortintIntegerlongLongfloatFloatdoubleDouble引用類型和原始類型的行為完全不同,并且它們具有不同的語(yǔ)義。引用類型和原始類型具有不同的特征和用法,它們包括:大小和速度問(wèn)題,這種類型以哪種類型的數(shù)據(jù)結(jié)構(gòu)存儲(chǔ),當(dāng)引用類型和原始類型用作某個(gè)類的實(shí)例數(shù)據(jù)時(shí)所指定的缺省值。對(duì)象引用實(shí)例變量的缺省值為null,而原始類型實(shí)例變量的缺省值與它們的類型有關(guān)。.作用域public,p
18、rivate,protected,以及不寫時(shí)的區(qū)別?訪問(wèn)PublicProtected缺省的Private同類VVVV同包VVVx子類VVXx通用性V7xXX.用java寫一個(gè)冒泡排序。/*對(duì)int數(shù)組進(jìn)行升序排序*paramintVal:要排序的數(shù)組paramasc:值為true,表示升序排序;傳入值為false,表示降序排序return返回排序后的int數(shù)組/publicstaticint口intArraySort(int口intVal,booleanasc)int口vals=intVal;inttemp;if(vals.length>0)if(asc=true)for(inti=0
19、;i<=vals.length-2;i+)for(intj=0;j<vals.length-i-1;j+)if(valsj>valsj+1)升序排列temp=valsj;valsj=valsj+1;valsj+1=temp;)elsefor(inti=0;i<=vals.length-2;i+)for(intj=0;j<vals.length-i-1;j+)if(valsj<valsj+1)降序排列temp=valsj;valsj=valsj+1;valsj+1=temp;returnvals;21.shortsi=1;si=si+1有什么錯(cuò)?shortsi
20、=1;si+=傳什么錯(cuò)?shorts1=1;s1=s1+1;(s1+1運(yùn)算結(jié)果是int型,需要強(qiáng)制轉(zhuǎn)換類型)shorts1=1;s1+=1;(可以正確編譯)22.float型floatf=3.4是否正確?不正確。精度不準(zhǔn)確,應(yīng)該用強(qiáng)制類型轉(zhuǎn)換,如下所示:floatf=(float)3.4或floatf=3.4f在java里面,沒(méi)小數(shù)點(diǎn)的默認(rèn)是int,有小數(shù)點(diǎn)的默認(rèn)是double;23.ArrayList和Vector的區(qū)另1J,HashMap和Hashtable的區(qū)另ArrayList和Vector都是使用數(shù)組方式存儲(chǔ)數(shù)據(jù),此數(shù)組元素?cái)?shù)大于實(shí)際存儲(chǔ)的數(shù)據(jù)以便增加和插入元素,它們都允許直接按序號(hào)
21、索引元素,但是插入元素要涉及數(shù)組元素移動(dòng)等內(nèi)存操作,所以索引數(shù)據(jù)快而插入數(shù)據(jù)慢,Vector由于使用了synchronized方法(線程安全),通常性能上較ArrayList差。HashMap是Hashtable的輕量級(jí)實(shí)現(xiàn)(非線程安全的實(shí)現(xiàn)),他們都完成了Map接口,主要區(qū)別在于HashMap允許空(null)鍵值(key),由于非線程安全,效率上可能高于Hashtable。HashMap允許將null作為一個(gè)entry的key或者value,而Hashtable不允許。HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。因
22、為contains方法容易讓人引起誤解。Hashtable繼承自Dictionary類,而HashMap是Java1.2引進(jìn)的Mapinterface的一個(gè)實(shí)現(xiàn)。最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多個(gè)線程訪問(wèn)Hashtable時(shí),不需要自己為它的方法實(shí)現(xiàn)同步,而HashMap就必須為之提供外同步。24.Error與Exception有什么區(qū)另1J?error表示恢復(fù)不是不可能但很困難的情況下的一種嚴(yán)重問(wèn)題。比如說(shuō)內(nèi)存溢出。不可能指望程序能處理這樣的情況。exception表示一種設(shè)計(jì)或?qū)崿F(xiàn)問(wèn)題。也就是說(shuō),它表示如果程序運(yùn)行正常,從不會(huì)發(fā)生
23、的情況。25.statement和preparestatement區(qū)別1)創(chuàng)建時(shí)的區(qū)別:Statementstm=con.createStatement();PreparedStatementpstm=con.prepareStatement(sql);執(zhí)行的時(shí)候:stm.execute(sql);pstm.execute();2)pstm一旦綁定了SQL,此pstm就不能執(zhí)行其他的Sql,即只能執(zhí)行一條SQL命令。stm可以執(zhí)行多條SQL命令。3)對(duì)于執(zhí)行同構(gòu)的sql(只有值不同,其他結(jié)構(gòu)都相同),用pstm的執(zhí)行效率比較的高,對(duì)于異構(gòu)的SQL語(yǔ)句,Statement的執(zhí)行效率要高。4)當(dāng)需
24、要外部變量的時(shí)候,pstm的執(zhí)行效率更高.26.寫一個(gè)數(shù)據(jù)庫(kù)連接類,包括查詢及結(jié)果存儲(chǔ)。importjava.sql.*;需要加入的包類的定義classDBConnectprivateStringcon1="sun.jdbc.odbc.JdbcOdbcDriver"/連接SQL所需要的字符串privateStringurl="jdbc:odbc:test"privateStringuser="sa",password=""/這里請(qǐng)根據(jù)您的數(shù)據(jù)庫(kù)用戶和密碼自行修改Connectioncon;/用于連接數(shù)據(jù)庫(kù)用的Pre
25、paredStatementps;/其實(shí)用Statement也行,PreparedStatement集成了Statement.ResultSetrs;一個(gè)集合,可以用于執(zhí)行SQL命令/構(gòu)造函數(shù)DBConnect()tryClass.forName(conl);/Class.forName()用于將一些類加載到JVMthis.Connect();/函數(shù)調(diào)用trythis.execute();catch(SQLExceptionex)System.out.println(ex.toString();catch(ClassNotFoundExceptionce)System.out.println(ce);publicvoidConnect()trycon=DriverManager.getConnection(url,user,password);/做這部之前先把ODBC配置好if(con!=null)System.out.println("ConnectionSucessfully!");)catch(SQLExceptionex)System.out.println(ex.toString();publicv
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 錢江大橋橋墩施工方案
- 2025年時(shí)代青春面試試題及答案
- 2025年煤礦安全規(guī)程試題及答案
- 公路干線物流自動(dòng)駕駛行業(yè)研究報(bào)告
- 2025年遇到好難的面試題及答案
- 低溫低濁水處理成功案例
- cc結(jié)構(gòu)域蛋白互作
- 4年級(jí)上冊(cè)語(yǔ)文19課
- ansys結(jié)構(gòu)計(jì)算軸向加速度
- 樹木移植的施工方案
- 全過(guò)程造價(jià)咨詢服務(wù)實(shí)施方案
- 實(shí)用參考從合規(guī)到績(jī)效:宋志平談央企學(xué)習(xí)型董事會(huì)建設(shè)
- GB/T 912-2008碳素結(jié)構(gòu)鋼和低合金結(jié)構(gòu)鋼熱軋薄鋼板和鋼帶
- GB/T 26480-2011閥門的檢驗(yàn)和試驗(yàn)
- 中共一大會(huì)址
- 云南省煙草買賣合同(標(biāo)準(zhǔn)版)
- 2023個(gè)人獨(dú)資企業(yè)清算報(bào)告(精選4篇)
- 衛(wèi)生統(tǒng)計(jì)學(xué)(全套課件)
- 2021年6月浙江省高考讀后續(xù)寫課件-高考英語(yǔ)復(fù)習(xí)備考
- 小學(xué)古詩(shī)詞80首(硬筆書法田字格)
-
評(píng)論
0/150
提交評(píng)論