企業(yè)面試題亞聯(lián)題目綜合_第1頁
企業(yè)面試題亞聯(lián)題目綜合_第2頁
企業(yè)面試題亞聯(lián)題目綜合_第3頁
企業(yè)面試題亞聯(lián)題目綜合_第4頁
企業(yè)面試題亞聯(lián)題目綜合_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1. Vector & ArrayList1)Vector 的方法都是同步的(Synchronized),是線程安全的(thread-safe),而 ArrayList的方法不是,由于線程的同步必然要影響性能,因此,ArrayList 的性能比 Vector 好。2)當 Vector 或ArrayList 中的元素超過它的初始大小時,Vector 會將它的容量翻倍,而ArrayList 只增加 50%的大小,這樣,ArrayList 就有利于節(jié)約內(nèi)存空間。2 jsp 內(nèi)置對象:request 用戶端請求,此請求會包含來自 GET/T 請求的參數(shù)response 網(wǎng)頁傳回用戶端的回應(yīng) 包含了響應(yīng)

2、客戶請求的有關(guān)信息pageContext 網(wǎng)頁的屬性是在這里管理 頁面上下文對象 提供了對JSP 頁面內(nèi)所有的對象及名字空間的ses與請求有關(guān)的會話期,主要用于用來保存客戶端狀態(tài)信息 此對象代表服務(wù)器與客戶端所建立的會話application servlet 應(yīng)用程序?qū)ο筘撠?zé)提供應(yīng)用程序在服務(wù)器中運行時的一些全局信息 application 對象實現(xiàn)了用戶間數(shù)據(jù)的共享,可存放全局變量。它開始于服務(wù)器的啟動,直到服務(wù)器的關(guān)閉,在此期間,此對象將一直存在;這樣在用戶的前后連接或不同用戶之間的連接中,可以對此對象的同一屬性進行操作out 用來傳送回應(yīng)的輸出 輸出對象config 配置對象 提供一些配

3、置信息page JSP 網(wǎng)頁本身 頁面對象 代表了正在運行的由 JSP 文件產(chǎn)生的類對象exception 對象是一個例外對象,當一個頁面在運行過程中發(fā)生了例外,就產(chǎn)生這個對象Java 內(nèi)存溢出 1.數(shù)據(jù)量過于龐大;死循環(huán) ;靜態(tài)變量和靜態(tài)方法過多;遞歸;無法確定是否被的對象;2.虛擬機不回收內(nèi)存(內(nèi)存泄漏);內(nèi)存溢出是指應(yīng)用系統(tǒng)中存在無法回收的內(nèi)存或使用的內(nèi)存過多,最終使得程序運行要用到的內(nèi)存大于虛擬機能提供的最大內(nèi)存Java 異常處理機制1. Java 程序在執(zhí)行過程中如果出現(xiàn)了異常,會生成一個異常對象2. 這個異常對象會被交給 java 運行時環(huán)境(jre),這一提交過程被稱為拋出(th

4、row)異常3.當 jre 得到一個異常對象時,它會尋找能處理這一異常的代碼。找到能處理這一異常的方法后,jre 會把這一異常對象交給這個方法進行處理,這一過程被稱為異常捕獲4. 如果 gre 找不到可以捕獲異常的方法,則 jre 將終止,相應(yīng)的 java 程序也將退出C+中的虛函數(shù)和純虛函數(shù)用法 象這樣定義的就是純虛函數(shù) virtual voidf(void) = 0; 象這樣的就是虛函 virtual void f(void);1.虛函數(shù)和純虛函數(shù)可以定義在同一個類(class)中,含有純虛函數(shù)的類被稱為抽象類(abstractclass),而只含有虛函數(shù)的類(class)不能被稱為抽象類

5、(abstract class)。2.虛函數(shù)可以被直接使用,也可以被子類(sub class)重載以后以多態(tài)的形式調(diào)用,而純虛函數(shù)必須在子類(subclass)中實現(xiàn)該函數(shù)才可以使用,因為純虛函數(shù)在基類(base class)只有而沒有定義。3.虛函數(shù)和純虛函數(shù)都可以在子類(sub class)中被重載,以多態(tài)的形式被調(diào)用。4.虛函數(shù)和純虛函數(shù)通常存在于抽象基類(abstract base class-ABC)之中,被繼承的子類重載,目的是提供一個的接口。 5 虛函數(shù)的定義形式:virtual method body純虛函數(shù)的定義形式:virtual = 0;在虛函數(shù)和純虛函數(shù)的定義中不能有

6、sic 標識符,原因很簡單,被 sic 修飾的函數(shù)在編譯時候要求前期 bind,然而虛函數(shù)卻是動態(tài)綁定(run-timebind),而且被兩者修飾的函數(shù)生命周期(life recycle)也不一樣。6.如果一個類中含有純虛函數(shù),那么任何試圖對該類進行實例化的語句都將導(dǎo)致錯誤的產(chǎn)生,因為抽象基類(ABC)是不能被直接調(diào)用的。必須被子類繼承重載以后,根據(jù)要求調(diào)用其子類的方法Sizeof 簡單的說其作用就是返回一個對象或者類型所占的內(nèi)存字節(jié)數(shù)。sizeof 有三種語法形式,如下:1) sizeof( object ); / sizeof( 對象 );2) sizeof( type_name ); /

7、 sizeof( 類型 );3) sizeof object; / sizeof 對象;“protected” 修飾的方法和屬性對于包外的子類是可見的1 公共控制符 public :如果一個類被為公共類,表明它可以被所有的其它類所和。用 public 修飾的類的域稱為公共域。如果公共域?qū)儆谝粋€公共類,則它可以被所有的其他類所。2 私有控制符 private :用 private 修飾的成員變量 ( 域 ) 只能被該類自身所訪問,而不能被任何其它類 ( 包括子類 ) 所。3 保護控制符 protected :用 protected 修飾的成員變量可以被三種類所引用:該類自身;與它在同一個包中的其

8、它類;在其它包中的該類的子類。使用修飾符protected 的主要作用是允許其它包中它的子類來父類的特定屬性。C+異常處理機制 A.把可能出現(xiàn)異常的代碼和異常處理代碼開,結(jié)構(gòu)更清晰.B.把內(nèi)層錯誤的處理直接轉(zhuǎn)移到適當?shù)耐鈱觼硖幚?化簡了處理上層,上層再轉(zhuǎn)移到上上層,當層數(shù)過多時將需要非常多的判斷,C.局部出現(xiàn)異常時,在執(zhí)行處理代碼之前,會執(zhí)行堆棧回退,即為 D.可以在出現(xiàn)異常時保證不產(chǎn)生內(nèi)存泄漏.通過適當?shù)膖ry,catch布局,可以保證 delete pobj;一定被執(zhí)行.E.在出現(xiàn)異常時,能夠獲取異常的信息,異常原因.F.可以在處理塊中嘗試錯誤恢復(fù).保證程序幾乎不會.通過適當處理,即使出現(xiàn)

9、除 0 異常,內(nèi)存違例,也能讓程序不,繼續(xù)運行,這種能力在某些情況下及其重要.在Java 語言中,sic 表示“全局”或者“靜態(tài)”的意思,用來修飾成員變量和成員方法,被sic 修飾的成員變量和成員方法獨立于該類的任何對象。也就是說,它不依賴類特定的實例,被類的所有實例共享01 public sicsearchRecursively( data,key) 03if (data = null | data.length high)16return -1;18mid = (low + high) / 2;20if (key datamid) 26return doSearchRecursively(

10、data, mid + 1, high, key);2728 else 30return mid;1 HashMap 不是線程安全的2 HashTable 是線程安全的HashMap 完成了 Map 接口,主要區(qū)別在于 HashMap 允許空(null)鍵值(key),由于非線程安全,效率上可能高于 Hashtable。HashMap 允許將null 作為一個 entry 的key 或者value,而Hashtable 不允許。HashMap 把Hashtable 的 contains 方法去掉了,改成 containsvalue 和containsKey。因為 contains 方法容易讓人

11、引起誤解。Hashtable 繼承自 Dictionary 類,而 HashMap 是 Java1.2 引進的 Maperface 的一個實現(xiàn)。最大的不同是,Hashtable 的方法是 Synchronize 的,而 HashMap 不是,在多個線程Hashtable 時,不需要自己為它的方法實現(xiàn)同步,而 HashMap 就必須為之提供外同步。在jsp 中include 有兩種形式,分別是Include 指令:和include動作:兩者最重要的區(qū)別:JSP 指令,是將被引入的 JSP 與原 JSP融合到一起,而這個融合過程是在翻譯階段進行的jsp 頁面是把include 指令元素()所指定的

12、頁面的實際內(nèi)容(也就是代碼段)加入到引入它的 jsp 頁面中,一個文件后被 jsp 容器將它轉(zhuǎn)化成servlet??梢钥吹竭@時會產(chǎn)生一個臨時 class 文件和一個 servlet 源文件。而動作元素()是在請求處理階段引入的,會被 JSP 容器生成兩個臨時 class 文件和兩個servlet 原文件。而引入的只是 servlet 的輸出結(jié)果,即 JspWriter 對象的輸出結(jié)果,而不是jsp 的源代碼。SES傳值如果是要利用SES將 2.jsp 傳到 1.jsp,要保證 1.jsp 和 2.jsp 在一個會話期(即同在 1 個 ses),只要用超連接的形式到 1.jsp 即可.如果是要提

13、交表單的話,你 form里的 action 屬性要是t 方式,即.在 2.jsp 里寫setribute,1.jsp 寫getribute 是絕對沒有問題的主要問你學(xué)到哪里了,主要針對 Java,SQL(學(xué)過的數(shù)據(jù)庫)和 Web 提問,因為時間不夠了,對提問就很少。對每個人的問題都不一樣,只供思路參考,問題記不清晰,部分非正確,歡迎指正錯誤。問Java 學(xué)到哪里了? 答:異常;答:throw;問拋出異常的方法?問捕獲異常的方法?答:try catch finally;問catch里有return,是執(zhí)行 return 還是finally?答:finally;問catch和finally 里都有

14、 return,執(zhí)行哪個return?答:finally的return;SQL 學(xué)過的時間太長,大部分都忘記了,問題記得也不是特別清楚。因為時間問題沒問有關(guān) web 問題,唯一會的能多點的東西悲劇.HashTable 的應(yīng)用非常廣泛,HashMap 是新框架中用來代替 HashTable 的類,也就是說建議使用 HashMap,不要使用 HashTable??赡苣阌X得 HashTable 很好用,為什么不用呢?這里簡單分析他們的區(qū)別。1.HashTable 的方法是同步的,HashMapVector 和 ArrayList 一樣。同步,所以在多線程場合要手動同步 HashMap 這個區(qū)別就像2

15、.HashTable 不允許 null 值(key 和 value 都不可以),HashMap 允許 null 值(key 和value 都可以)。3.HashTable 有一個 contains(Object value),功能和containsValue(Object value)功能一樣。4.HashTable 使用 Enumeration,HashMap 使用 Iterator。 以上只是表面的不同,它們的實現(xiàn)也有很大的不同。5.HashTable 中 hash 數(shù)組默認大小是11,增加的方式是 old*2+1。HashMap 中 hash 數(shù)組的默認大小是16,而且一定是2的指數(shù)。6

16、.哈希值的使用不同,HashTable 直接使用對象的 hashCode,代碼是這樣的:hash = key.hashCode();index = (hash & 0 x7F) % tab.length;而 HashMap 重新計算hash 值,而且用與代替求模:hash = hash(k);i = indexFor(hash, table.length);sichash(Object x) h = x.hashCode();h += (h 14); h += (h 10);return h;sicindexFor(h,length) return h & (length-1);以上只是一些比

17、較突出的區(qū)別,當然他們的實現(xiàn)上還是有很多不同的,比如 HashMap 對 null 的操作。Hashtable 和HashMap 的區(qū)別:1.Hashtable 是 Dictionary 的子類,HashMap 是 Map 接口的一個實現(xiàn)類;2.Hashtable 中的方法是同步的,而 HashMap 中的方法在缺省情況下是非同步的。即是說,在多線程應(yīng)用程序中,不用專門的操作就安全地可以使用 Hashtable 了;而對于HashMap,則需要額外的同步機制。但 HashMap 的同步問題可通過 Collections 的一個靜態(tài)方法得到解決:Map Collections.synchroni

18、zedMap(Map m)這個方法返回一個同步的 Map,這個 Map 封裝了底層的 HashMap 的所有方法,使得底層的 HashMap 即使是在多線程的環(huán)境中也是安全的。3.在 HashMap 中,null 可以作為鍵,這樣的鍵只有一個;可以有一個或多個鍵所對應(yīng)的值為 null。當 get()方法返回 null 值時,即可以表示 HashMap 中沒有該鍵,也可以表示該鍵所對應(yīng)的值為 null。因此,在 HashMap 中不能由 get()方法來判斷 HashMap 中是否存在某個鍵,而應(yīng)該用 containsKey()方法來判斷。Hashtable 繼承自 Dictionary 類,而 HashMap 是 Java1.2引進的 Maperface 的一個實現(xiàn)HashMap 允許將 null 作為一個 ent

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論