版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
經(jīng)典的Java基礎(chǔ)面試題問(wèn)題:若是main方法被聲明為private會(huì)怎樣?答案:能正常編譯,但運(yùn)行的時(shí)候會(huì)提示”main方法不是public的”。問(wèn)題:Java里的傳引用和傳值的差異是什么?答案:傳引用是指?jìng)鬟_(dá)的是地址而不是值自己,傳值則是傳達(dá)值的一份拷貝。問(wèn)題:若是要重寫(xiě)一個(gè)對(duì)象的equals方法,還要考慮什么?答案:hashCode。問(wèn)題:Java的”一次編寫(xiě),各處運(yùn)行”是怎樣實(shí)現(xiàn)的?答案:Java程序會(huì)被編譯成字節(jié)碼組成的class文件,這些字節(jié)碼能夠運(yùn)行在任何平臺(tái),因此Java平臺(tái)是獨(dú)立的。問(wèn)題:說(shuō)明一下publicstaticvoidmain(Stringargs[])這段聲明里每個(gè)要點(diǎn)字的作用答案:public:main方法是Java程序運(yùn)行時(shí)調(diào)用的第一個(gè)方法,因此它必定對(duì)Java環(huán)境可見(jiàn)。因此可見(jiàn)性設(shè)置為pulic.static:Java平臺(tái)調(diào)用這個(gè)方法時(shí)不會(huì)創(chuàng)辦這個(gè)類的一個(gè)實(shí)例,因此這個(gè)方法必定聲明為static。void:main方法沒(méi)有返回值。String是命令行傳進(jìn)參數(shù)的種類,args是指命令行傳進(jìn)的字符串?dāng)?shù)組。問(wèn)題:==與equals的差異答案:==比較兩個(gè)對(duì)象在內(nèi)存里可否是同一個(gè)對(duì)象,就是說(shuō)在內(nèi)存里的儲(chǔ)藏地址一致。兩個(gè)String對(duì)象儲(chǔ)藏的值是同樣的,但有可能在內(nèi)存里儲(chǔ)藏在不同樣的地方.比較的是引用而equals方法比較的是內(nèi)容。publicbooleanequals(Objectobj)這個(gè)方法是由Object對(duì)象供應(yīng)的,能夠由子類進(jìn)行重寫(xiě)。默認(rèn)的實(shí)現(xiàn)只有當(dāng)對(duì)象和自己進(jìn)行比較時(shí)才會(huì)返回true,這個(gè)時(shí)候和==是等價(jià)的。String,BitSet,Date,和File都對(duì)equals方法進(jìn)行了重寫(xiě),對(duì)兩個(gè)String對(duì)象而言,值相等意味著它們包括同樣的字符序列。對(duì)于基本種類第1頁(yè)共8頁(yè)的包裝類來(lái)說(shuō),值相等意味著對(duì)應(yīng)的基本種類的值同樣。publicclassEqualsTest{publicstaticvoidmain(String[]args){Strings1=“abc”;Strings2=s1;Strings5=“abc”;Strings3=newString(”abc”);Strings4=newString(”abc”);System.out.println(”==comparison:”+(s1==s5));System.out.println(”==comparison:”+(s1==s2));System.out.println(”Usingequalsmethod:”+s1.equals(s2));System.out.println(”==comparison:”+s3==s4);System.out.println(”Usingequalsmethod:”+s3.equals(s4));}}結(jié)果:comparison:truecomparison:trueUsingequalsmethod:truefalseUsingequalsmethod:true問(wèn)題:若是去掉了main方法的static修飾符會(huì)怎樣?答案:程序能正常編譯。運(yùn)行時(shí)會(huì)拋NoSuchMethodError異常。問(wèn)題:為什么oracletype4驅(qū)動(dòng)被稱作瘦驅(qū)動(dòng)?答案:oracle供應(yīng)了一個(gè)type4JDBC驅(qū)動(dòng),被稱為瘦驅(qū)動(dòng)。這個(gè)驅(qū)動(dòng)包含了一個(gè)oracle自己完好用Java實(shí)現(xiàn)的一個(gè)TCP/IP的Net8的實(shí)現(xiàn),因此它的平臺(tái)是獨(dú)立的,能夠在運(yùn)行時(shí)由閱讀器下載,不依賴任何客戶端的oracle實(shí)現(xiàn)??蛻舳诉B接字符串用的是TCP/IP的地址端口,而不是數(shù)據(jù)庫(kù)名的第2頁(yè)共8頁(yè)tnsname。問(wèn)題:介紹一下finalize方法答案:final:常量聲明。finally:辦理異常。finalize:幫助進(jìn)行垃圾回收。接口里聲明的變量默認(rèn)是final的。final類無(wú)法繼承,也就是沒(méi)有子類。這么做是出于基礎(chǔ)種類的安全考慮,比方String和Integer。這樣也使得編譯器進(jìn)行一些優(yōu)化,更簡(jiǎn)單保證線程的安全性。final方法無(wú)法重寫(xiě)。final變量的值不能夠改變。finalize()方法在一個(gè)對(duì)象被銷毀和回收前會(huì)被調(diào)用。finally,平時(shí)用于異常辦理,無(wú)論有沒(méi)有異常被拋出都會(huì)執(zhí)行到。比方,關(guān)閉連接平時(shí)放到finally塊中完成。問(wèn)題:什么是JavaAPI?答案:JavaAPI是大量軟件組件的會(huì)集,它們供應(yīng)了大量適用的功能,比如GUI組件。問(wèn)題:GregorianCalendar類是什么東西?答案:GregorianCalendar供應(yīng)了西方傳統(tǒng)日歷的支持。問(wèn)題:ResourceBundle類是什么?答案:ResourceBundle用來(lái)儲(chǔ)藏指定語(yǔ)言環(huán)境的資源,應(yīng)用程序能夠依照運(yùn)行時(shí)的語(yǔ)言環(huán)境來(lái)加載這些資源,從而供應(yīng)不同樣語(yǔ)言的顯現(xiàn)。問(wèn)題:為什么Java里沒(méi)有全局變量?答案:全局變量是全局可見(jiàn)的,Java不支持全局可見(jiàn)的變量,因?yàn)椋喝肿兞科茐牧艘猛该餍栽瓌t。全局變量以致了命名空間的矛盾。問(wèn)題:怎樣將String種類轉(zhuǎn)變?yōu)镹umber種類?答案:Integer類的valueOf方法能夠?qū)tring轉(zhuǎn)成Number。下面是代碼示例:StringnumString=“1000〃;intid=Integer.valueOf(numString).intValue();問(wèn)題:SimpleTimeZone類是什么?答案:SimpleTimeZone供應(yīng)公歷日期支持。第3頁(yè)共8頁(yè)問(wèn)題:while循環(huán)和do循環(huán)有什么不同樣?答案:while結(jié)構(gòu)在循環(huán)的開(kāi)始判斷下一個(gè)迭代可否應(yīng)該連續(xù)。do/while結(jié)構(gòu)在循環(huán)的結(jié)尾來(lái)判斷可否將連續(xù)下一輪迭代。do結(jié)構(gòu)最少會(huì)執(zhí)行一次循環(huán)體。問(wèn)題:Locale類是什么?答案:Locale類用來(lái)依照語(yǔ)言環(huán)境來(lái)動(dòng)向調(diào)整程序的輸出。問(wèn)題:面向?qū)ο缶幊痰脑瓌t是什么?答案:主要有三點(diǎn),多態(tài),繼承和封裝。問(wèn)題:介紹下繼承的原則答案:繼承使得一個(gè)對(duì)象能夠獲取另一個(gè)對(duì)象的屬性。使用繼承能夠讓已經(jīng)測(cè)試齊全的功能得以復(fù)用,并且能夠一次更正,所有繼承的地方都同時(shí)生效。問(wèn)題:什么是隱式的種類轉(zhuǎn)變?答案:隱式的種類轉(zhuǎn)變就是簡(jiǎn)單的一個(gè)種類賦值給另一個(gè)種類,沒(méi)有顯式的告訴編譯器發(fā)生了轉(zhuǎn)變。其實(shí)不是所有的種類都支持隱式的種類轉(zhuǎn)變。代碼示例:inti=1000;longj=i;//Implicitcasting問(wèn)題:sizeof是Java的要點(diǎn)字嗎?答案:不是。問(wèn)題:native方法是什么?答案:native方法是非Java代碼實(shí)現(xiàn)的方法。問(wèn)題:在System.out.println()里面,System,out,println分別是什么?答案:System是系統(tǒng)供應(yīng)的預(yù)定義的final類,out是一個(gè)PrintStream對(duì)象,println是out對(duì)象里面一個(gè)重載的方法。問(wèn)題:封裝,繼承和多態(tài)是什么?答案:簡(jiǎn)單來(lái)說(shuō),多態(tài)是指一個(gè)名字多種實(shí)現(xiàn)。多態(tài)使得一個(gè)實(shí)體經(jīng)過(guò)一個(gè)通用的方式來(lái)實(shí)現(xiàn)不同樣的操作。詳盡的操作是由實(shí)質(zhì)的實(shí)現(xiàn)來(lái)決定的。第4頁(yè)共8頁(yè)多態(tài)在Java里有三種表現(xiàn)方式:方法重載經(jīng)過(guò)繼承實(shí)現(xiàn)方法重寫(xiě)經(jīng)過(guò)Java接口進(jìn)行方法重寫(xiě)。問(wèn)題:顯式的種類轉(zhuǎn)變是什么?答案:顯式的種類轉(zhuǎn)變是明確告訴了編譯器來(lái)進(jìn)行對(duì)象的轉(zhuǎn)變。代碼示例:longi=700.20;intj=(int)i;//E某plicitcasting問(wèn)題:什么是Java虛假機(jī)?答案:Java虛假機(jī)是能移植到不同樣硬件平臺(tái)上的軟件系統(tǒng)。問(wèn)題:種類向下變換是什么?答案:向下變換是指由一個(gè)通用種類變換成一個(gè)詳盡的種類,在繼承結(jié)構(gòu)上向下進(jìn)行。問(wèn)題:Java的接見(jiàn)修飾符是什么?答案:接見(jiàn)權(quán)限修飾符是表示類成員的接見(jiàn)權(quán)限種類的要點(diǎn)字。使用這些要點(diǎn)字來(lái)限制程序的方法也許變量的接見(jiàn)權(quán)限。它們包括:public:所有類都能夠接見(jiàn)protected:同一個(gè)包內(nèi)以及所有子類都能夠接見(jiàn)private:只有歸屬的類才能接見(jiàn)默認(rèn):歸屬類及同樣包下的子類能夠訪問(wèn)問(wèn)題:所有類的父類是什么?答案:Object.問(wèn)題:Java的基本種類有哪些?答案:byte,char,short,int,long,float,double,boolean。問(wèn)題:靜態(tài)種類有什么特點(diǎn)?答案:靜態(tài)變量是和類綁定到一起的,而不是類的實(shí)例對(duì)象。每一個(gè)實(shí)例對(duì)象都共享同樣一份靜態(tài)變量。也就是說(shuō),一個(gè)類的靜態(tài)變量只有一份,無(wú)論它有多少個(gè)對(duì)象。類變量也許說(shuō)靜態(tài)變量是經(jīng)過(guò)static這個(gè)要點(diǎn)字來(lái)聲明的。類變量平時(shí)被用作常量。靜態(tài)變量平時(shí)經(jīng)過(guò)類名字來(lái)進(jìn)行接見(jiàn)。當(dāng)程序運(yùn)行的時(shí)候這個(gè)變量就會(huì)創(chuàng)辦直到程序結(jié)束后才會(huì)被銷毀。類變量的作用域和實(shí)例變第5頁(yè)共8頁(yè)量是同樣的。它的初始值和成員變量也是同樣的,當(dāng)變量沒(méi)被初始化的時(shí)候依照它的數(shù)據(jù)種類,會(huì)有一個(gè)默認(rèn)值。近似的,靜態(tài)方法是屬于類的方法,而不是類對(duì)象,它的調(diào)用其實(shí)不作用于類對(duì)象,也不需要?jiǎng)?chuàng)辦任何的類實(shí)例。靜態(tài)方法自己就是final的,因?yàn)橹貙?xiě)只會(huì)發(fā)生在類實(shí)例上,靜態(tài)方法是和類綁定在一起的,不是對(duì)象。父類的靜態(tài)方法會(huì)被子類的靜態(tài)方法障蔽,只要原來(lái)方法沒(méi)有聲明為final。非靜態(tài)方法不能夠重寫(xiě)靜態(tài)方法,也就是說(shuō),你不能夠在子類中把一個(gè)靜態(tài)方法改成實(shí)例方法。非靜態(tài)變量在每一個(gè)對(duì)象實(shí)例上都有單獨(dú)的一份值。問(wèn)題:&操作符和&&操作符有什么差異?答案:當(dāng)一個(gè)&表達(dá)式在求值的時(shí)候,兩個(gè)操作數(shù)都會(huì)被求值,&&更像是一個(gè)操作符的快捷方式。當(dāng)一個(gè)&&表達(dá)式求值的時(shí)候,先計(jì)算第一個(gè)操作數(shù),如果它返回true才會(huì)計(jì)算第二個(gè)操作數(shù)。若是第一個(gè)操作數(shù)取值為fale,第二個(gè)操作數(shù)就不會(huì)被求值。問(wèn)題:Java是怎樣辦理整型的溢出和下溢的?答案:Java依照種類的大小,將計(jì)算結(jié)果中的對(duì)應(yīng)低階字節(jié)儲(chǔ)藏到對(duì)應(yīng)的值里面。問(wèn)題:publicstaticvoid寫(xiě)成staticpublicvoid會(huì)怎樣?答案:程序正常編譯及運(yùn)行。問(wèn)題,聲明變量和定義變量有什么不同樣?答案:聲明變量我們只供應(yīng)變量的種類和名字,并沒(méi)有進(jìn)行初始化。定義包括聲明和初始化兩個(gè)階段Strings;可是變量聲明,Strings=newString(“bob”);也許Strings=“bob”;是變量定義。問(wèn)題:Java支持哪一種參數(shù)傳達(dá)種類?答案:Java參數(shù)都是進(jìn)行傳值。對(duì)于對(duì)象而言,傳達(dá)的值是對(duì)象的引用,也就是說(shuō)原始引用和參數(shù)引用的.那個(gè)拷貝,都是指向同一個(gè)對(duì)象。問(wèn)題:對(duì)象封裝的原則是什么?答案:封裝是將數(shù)據(jù)及操作數(shù)據(jù)的代碼綁定到一個(gè)獨(dú)立的單元。這樣保障了數(shù)據(jù)的安全,防范外面代碼的錯(cuò)誤使用。對(duì)象贊同程序和數(shù)據(jù)進(jìn)行封裝,以第6頁(yè)共8頁(yè)減少潛藏的干涉。對(duì)封裝的另一個(gè)理解是作為數(shù)據(jù)及代碼的保護(hù)層,防范保護(hù)層外代碼的隨意接見(jiàn)。問(wèn)題:你怎么理解變量?答案:變量是一塊命名的內(nèi)存地域,以便程序進(jìn)行接見(jiàn)。變量用來(lái)儲(chǔ)藏?cái)?shù)據(jù),隨著程序的執(zhí)行,儲(chǔ)藏的數(shù)據(jù)也可能隨著改變。問(wèn)題:數(shù)值提升是什么?答案:數(shù)值提升是指數(shù)據(jù)從一個(gè)較小的數(shù)據(jù)種類變換成為一個(gè)更大的數(shù)據(jù)種類,以便進(jìn)行整型也許浮點(diǎn)型運(yùn)算。在數(shù)值提升的過(guò)程中,byte,char,short值會(huì)被轉(zhuǎn)變?yōu)閕nt種類。需要的時(shí)候int種類也可能被提升成long。long和float則有可能會(huì)被變換成double種類。問(wèn)題:Java的種類轉(zhuǎn)變是什么?答案:從一個(gè)數(shù)據(jù)種類變換成另一個(gè)數(shù)據(jù)種類叫做種類變換。Java有兩種種類變換的方式,一個(gè)是顯式的種類變換,一個(gè)是隱式的。問(wèn)題:main方法的參數(shù)里面,字符串?dāng)?shù)組的第一個(gè)參數(shù)是什么?答案:數(shù)組是空的,沒(méi)有任何元素。不像C也許C++,第一個(gè)元素默認(rèn)是程序名。若是命令行沒(méi)有供應(yīng)任何參數(shù)的話,main方法中的String數(shù)組為空,但不是null。問(wèn)題:怎么判斷數(shù)組是null還是為空?答案:輸出array.length的值,若是是0,說(shuō)明數(shù)組為空。若是是null的話,會(huì)拋出空指針異常。問(wèn)題:程序中能夠允好多個(gè)類同時(shí)擁有都有main方法嗎?答案:能夠。當(dāng)程序運(yùn)行的時(shí)候,我們會(huì)指定運(yùn)行的類名。JVM只會(huì)在你指定的類中查找main方法。因此多個(gè)類擁有main方法其實(shí)不存在命名矛盾的問(wèn)題。問(wèn)題:靜態(tài)變量在什么時(shí)候加載?編譯期還是運(yùn)行期?靜態(tài)代碼塊加載的時(shí)機(jī)呢?答案:當(dāng)類加載器將類加載到JVM中的
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 項(xiàng)目部安全生產(chǎn)技術(shù)管理制度
- 近代中國(guó)鄉(xiāng)約制度
- 超市處罰制度
- 財(cái)務(wù)審核審批及報(bào)銷制度
- 補(bǔ)充詳細(xì)的安全培訓(xùn)制度
- 成核劑對(duì)PLLA-PPC合金結(jié)晶及力學(xué)性能調(diào)控的深度剖析
- 醫(yī)學(xué)心理題目大全及答案
- 成都市成華區(qū)輔警招聘考試題庫(kù) (答案+解析)
- 成人高中歷年試卷及答案
- 管道觀察試題及答案
- 勵(lì)磁系統(tǒng)改造施工方案
- DB22-T 3432-2023 公路鋼護(hù)欄石墨烯復(fù)合防腐涂料應(yīng)用技術(shù)規(guī)范
- 臨床病區(qū)藥品管理試題及答案2025年版
- 自考勞動(dòng)法2025年10月真題及答案
- hsk標(biāo)準(zhǔn)教程教學(xué)課件
- 醫(yī)保年度工作匯報(bào)
- 井下充填安全知識(shí)培訓(xùn)課件
- SY-T5051-2024鉆具穩(wěn)定器-石油天然氣行業(yè)標(biāo)準(zhǔn)
- 構(gòu)網(wǎng)型電化學(xué)儲(chǔ)能系統(tǒng)接入配電網(wǎng)技術(shù)規(guī)定(征求意見(jiàn)稿)
- 醫(yī)院后勤采購(gòu)集中采購(gòu)計(jì)劃
- 2025反無(wú)人機(jī)系統(tǒng)行業(yè)市場(chǎng)空間、產(chǎn)業(yè)鏈及競(jìng)爭(zhēng)格局分析報(bào)告
評(píng)論
0/150
提交評(píng)論