java面試題大全(java基礎(chǔ))_第1頁(yè)
已閱讀1頁(yè),還剩13頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、Java核心技術(shù)部分核心技術(shù)部分1、面向?qū)ο蟮奶卣饔心男?、面向?qū)ο蟮奶卣饔心男??面向?qū)ο蟮娜筇卣鳎豪^承:繼承:通過(guò)繼承允許復(fù)用已有的類,繼承關(guān)系是一種“一般到特殊”的關(guān)系,比如蘋果類繼承水果類,這個(gè)過(guò)程稱為類繼承。派生出來(lái)的新類稱為原有類的子類(派生類),而原有類稱為新類的父類(基類)。子類可以從父類那里繼承得到方法和成員變量,而且子類類可以修改或增加新的方法使之適合子類的需要。封裝:封裝:封裝是把對(duì)象的狀態(tài)數(shù)據(jù)隱藏起來(lái),再通過(guò)暴露

2、合適的方法來(lái)允許外部程序修改對(duì)象的狀態(tài)數(shù)據(jù)。Java的封裝主要通過(guò)private、protected、public等訪問(wèn)控制符來(lái)實(shí)現(xiàn)。多態(tài)性:多態(tài)性:多態(tài)指的是當(dāng)同一個(gè)類型的引用類型的變量在執(zhí)行相同的方法時(shí),實(shí)際上會(huì)呈現(xiàn)出多種不同的行為特征。比如程序有Animala1=newAnimal()Animala2=newWolf()雖然a1、a2兩個(gè)引用變量的類型都是Animal,但當(dāng)它們調(diào)用同一個(gè)run()方法時(shí),如果Wolf()類重寫過(guò)A

3、nimal的run()方法,這就會(huì)導(dǎo)致a1、a2兩個(gè)變量執(zhí)行run()方法時(shí)呈現(xiàn)出不同的行為特征,這就是多態(tài)。多態(tài)增加了編程的靈活性,實(shí)際上大量設(shè)計(jì)模式都是基于多態(tài)類實(shí)現(xiàn)的。除此之外,抽象抽象也是一個(gè)重要的特征,抽象就是忽略與當(dāng)前目標(biāo)無(wú)關(guān)的相關(guān)方面,以便更充分地突出與當(dāng)前目標(biāo)有關(guān)的方面。抽象并不打算了解全部問(wèn)題,而只是選擇其中的一部分,暫時(shí)不用部分細(xì)節(jié)。抽象包括兩個(gè)方面,一是過(guò)程抽象,二是數(shù)據(jù)抽象。2、Java中實(shí)現(xiàn)多態(tài)的機(jī)制是什么?中

4、實(shí)現(xiàn)多態(tài)的機(jī)制是什么?Java允許父類或接口定義的引用變量指向子類或具體實(shí)現(xiàn)類的實(shí)例對(duì)象,而程序調(diào)用的方法在運(yùn)行時(shí)才動(dòng)態(tài)綁定,就是引用變量所指向的具體實(shí)例對(duì)象的方法,也就是內(nèi)存里正在運(yùn)行的那個(gè)對(duì)象的方法,而不是引用變量的類型中定義的方法。正是由于這種機(jī)制,兩個(gè)相同類型的變量,但由于它們實(shí)際引用了不同的3、一個(gè)、一個(gè)“.java“源文件中是否可以包括多個(gè)類(不是內(nèi)部源文件中是否可以包括多個(gè)類(不是內(nèi)部類)?有什么限制?類)?有什么限制?可

5、以有多個(gè)類,但只能有一個(gè)public的類,并且public的類名必須與文件的主文件名相同。包含多個(gè)類的Java源文件編譯之后會(huì)生成多個(gè).class文件??梢宰鳛樽址褂?。String代表了字符序列不可變的字符串;而StringBuffer、StringBuilder都代表了字符序列可變的字符串。StringBuffer、StringBuilder的區(qū)別是StringBuffer是線程安全的、性能略低,而StringBuilder是線程

6、不安全的,適合單線程環(huán)境使用,性能較好。8、Collection和Collections的區(qū)別。的區(qū)別。Collection是集合類(List、Set、Queue)的根接口。Collections是針對(duì)集合類的一個(gè)工具類,它提供一系列靜態(tài)方法實(shí)現(xiàn)對(duì)各種集合的搜索、排序、線程安全化等操作。9、說(shuō)說(shuō)、說(shuō)說(shuō)&和&&的區(qū)別。的區(qū)別。&和&&都可以用作邏輯與的運(yùn)算符,當(dāng)運(yùn)算符兩邊的表達(dá)式的結(jié)果都為true時(shí),整個(gè)運(yùn)算結(jié)果才為true,否則,只要有

7、一方為false,則結(jié)果為false。&&還具有短路的功能,即如果第一個(gè)表達(dá)式為false,則不再計(jì)算第二個(gè)表達(dá)式,例如,對(duì)于if(a8&&b5),當(dāng)a小于等于8時(shí),由于&&之前的表達(dá)式已經(jīng)為false了,因此&&之后的表達(dá)式根本不會(huì)執(zhí)行;再例如if(str!=null&&!str.equals(““))表達(dá)式,當(dāng)str為null時(shí),后面的表達(dá)式不會(huì)執(zhí)行,因此不會(huì)出現(xiàn)NullPointerException如果將&&改為&,則會(huì)拋出Nu

8、llPointerException異常。再例如if(x8&y)與if(x8&&y),當(dāng)a小于等于8時(shí),前一個(gè)表達(dá)式中y的值會(huì)增長(zhǎng);后一個(gè)表達(dá)式中y的值不會(huì)增加。除此之外,&還可以用作位運(yùn)算符,當(dāng)&操作符兩邊的表達(dá)式不是boolean類型時(shí),&表示按位與操作,我們通常使用0x0f來(lái)與一個(gè)整數(shù)進(jìn)行&運(yùn)算,來(lái)獲取該整數(shù)的最低4個(gè)bit位,例如,0x31&0x0f的結(jié)果為0x01。10、Overload和Override的區(qū)別。的區(qū)別。Ove

9、rloaded的方法是否的方法是否可以改變返回值的類型可以改變返回值的類型Overload是方法的重載Override是方法的重寫,也叫覆蓋。Overload要求兩個(gè)方法具有方法名相同、形參列表不同的要求,返回值類型不能作為重載的條件。Override要求子類方法與父類方法具有“兩同兩小一大”的要求。兩同兩同指:即父類方法、子類方法的方法名相同、形參列表相同;兩小兩小指:子類方法返回值類型要么是父類方法返回值類型的子類、要么與父類方法返

溫馨提示

  • 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論