版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
Java軟件工程師綜合面試題
方法的重寫Overriding和重載Overloading是Java多態(tài)性的不同表現(xiàn)。重寫Overriding是父類與子類之間多態(tài)性的一種表現(xiàn),重載Overloading是一個類中多態(tài)性的一種表現(xiàn)。假如在子類中定義某方法與其父類有一樣的名稱和參數(shù),我們說該方法被重寫(Overriding)。子類的對象使用這個方法時,將調(diào)用子類中的定義,對它而言,父類中的定義猶如被”屏蔽”了。假如在一個類中定義了多個同名的方法,它們或有不同的參數(shù)個數(shù)或有不同的參數(shù)類型,則稱為方法的重載(Overloading)。Overloaded的方法是可以轉(zhuǎn)變返回值的類型。
2.代碼查錯:
a)留意考慮,聲明在接口中的對象是靜態(tài)常量,不允許被修改。所以假如在繼承接口的子類中,修改了引用,則會報錯
b)在一個類中,文件名可以與類名不一樣,但是這個類必需是非public的.
3.面象對象三大特征。
1.抽象:抽象就是忽視一個主題中與當(dāng)前目標(biāo)無關(guān)的那些方面,以便更充分地留意與當(dāng)前目標(biāo)有關(guān)的方面。抽象并不準(zhǔn)備了解全部問題,而只是選擇其中的一局部,臨時不用局部細(xì)節(jié)。抽象包括兩個方面,一是過程抽象,二是數(shù)據(jù)抽象。
2.繼承:繼承是一種聯(lián)結(jié)類的層次模型,并且允許和鼓舞類的重用,它供應(yīng)了一種明確表述共性的方法。對象的一個新類可以從現(xiàn)有的類中派生,這個過程稱為類繼承。新類繼承了原始類的特性,新類稱為原始類的派生類(子類),而原始類稱為新類的基類(父類)。派生類可以從它的基類那里繼承方法和實(shí)例變量,并且類可以修改或增加新的方法使之更適合特別的需要。
3.封裝:封裝是把過程和數(shù)據(jù)包圍起來,對數(shù)據(jù)的訪問只能通過已定義的界面。面對對象計算始于這個根本概念,即現(xiàn)實(shí)世界可以被描繪成一系列完全自治、封裝的對象,這些對象通過一個受愛護(hù)的接口訪問其他對象。
4.多態(tài)性:多態(tài)性是指允許不同類的對象對同一消息作出響應(yīng)。多態(tài)性包括參數(shù)化多態(tài)性和包含多態(tài)性。多態(tài)性語言具有敏捷、抽象、行為共享、代碼共享的優(yōu)勢,很好的解決了應(yīng)用程序函數(shù)同名問題。
4.hashMap和hashtable的區(qū)分:
HashMap是Hashtable的輕量級實(shí)現(xiàn)(非線程安全的實(shí)現(xiàn)),他們都完成了Map接口,主要區(qū)分在于HashMap允許空(null)鍵值(key),由于非線程安全,效率上可能高于Hashtable。
HashMap允許將null作為一個entry的key或者value,而Hashtable不允許。
HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。由于contains方法簡單讓人引起誤會。
Hashtable繼承自Dictionary類,而HashMap是Java1.2引進(jìn)的Mapinterface的一個實(shí)現(xiàn)。(繼承自AbstractMap類).
最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多個線程訪問Hashtable時,不需要自己為它的方法實(shí)現(xiàn)同步,而HashMap就必需為之供應(yīng)外同步。
Hashtable和HashMap采納的hash/rehash算法都也許一樣,所以性能不會有很大的差異。
5.啟動線程用什么方法?
start();
6.畫出模版模式圖
7.寫一段jdbc查詢代碼:
privateConnectioncon=null;
privatePreparedStatementpstmt=null;
privateResultSetrs=null;
publicvoidgetQuery(){
try{
Class.forName(“com.jdbc.mysql.Driver”);
con=(Connection)DriverManager.getConnection(“jdbc:mysql://localhost:3306/test”,“root”,“root”);
pstmt=(PreparedStatement)con.prepareStatement(“select*formtabName”);
rs=(ResultSet)pstmt.executeQuery();
while(rs.next()){
System.out.println(rs.getObject(1));
}
}catch(Exceptione){
e.printStackTrace();
}finally{
try{
if(rs!=null){rs.close();}
if(pstmt!=null){pstmt.close();}
if(con!=null){if(!con.isClosed()){con.close();}con=null;}
}catch(SQLExceptione){
e.printStackTrace();
}
}
}
8.索引的優(yōu)缺點(diǎn):
這是由于,創(chuàng)立索引可以大大提高系統(tǒng)的性能。
第一,通過創(chuàng)立唯一性索引,可以保證數(shù)據(jù)庫表中每一行數(shù)據(jù)的唯一性。
其次,可以大大加快數(shù)據(jù)的檢索速度,這也是創(chuàng)立索引的最主要的緣由。
第三,可以加速表和表之間的連接,特殊是在實(shí)現(xiàn)數(shù)據(jù)的參考完整性方面特殊有意義。
第四,在使用分組和排序子句進(jìn)展數(shù)據(jù)檢索時,同樣可以顯著削減查詢中分組和排序的時間。
第五,通過使用索引,可以在查詢的過程中,使用優(yōu)化隱蔽器,提高系統(tǒng)的性能。
二、建立方向索引的不利因素(缺點(diǎn))
或許會有人要問:增加索引有如此多的優(yōu)點(diǎn),為什么不對表中的每一個列創(chuàng)立一個索引呢?這種想法當(dāng)然有其合理性,然而也有其片面性。雖然,索引有很多優(yōu)點(diǎn),但是,為表中的每一個列都增加索引,是特別不明智的。這是由于,增加索引也有很多不利的一個方面。
第一,創(chuàng)立索引和維護(hù)索引要消耗時間,這種時間隨著數(shù)據(jù)量的增加而增加。
其次,索引需要占物理空間,除了數(shù)據(jù)表占數(shù)據(jù)空間之外,每一個索引還要占肯定的物理空間,假如要建立聚簇索引,那么需要的空間就會更大。
第三,當(dāng)對表中的數(shù)據(jù)進(jìn)展增加、刪除和修改的時候,索引也要動態(tài)的維護(hù),這樣就降低了數(shù)據(jù)的維護(hù)速度。
三、創(chuàng)立方向索引的準(zhǔn)則
索引是建立在數(shù)據(jù)庫表中的某些列的上面。因此,在創(chuàng)立索引的時候,應(yīng)當(dāng)認(rèn)真考慮在哪些列上可以創(chuàng)立索引,在哪些列上不能創(chuàng)立索引。
一般來說,應(yīng)當(dāng)在這些列上創(chuàng)立索引。
第一,在常常需要搜尋的列上,可以加快搜尋的速度;
其次,在作為主鍵的列上,強(qiáng)制該列的唯一性和組織表中數(shù)據(jù)的排列構(gòu)造;
第三,在常常用在連接的列上,這些列主要是一些外鍵,可以加快連接的速度;
第四,在常常需要依據(jù)范圍進(jìn)展搜尋的列上創(chuàng)立索引,由于索引已經(jīng)排序,其指定的范圍是連續(xù)的;
第五,在常常需要排序的列上創(chuàng)立索引,由于索引已經(jīng)排序,這樣查詢可以利用索引的排序,加快排序查詢時間;
第六,在常常使用在WHERE子句中的列上面創(chuàng)立索引,加快條件的推斷速度。
同樣,對于有些列不應(yīng)當(dāng)創(chuàng)立索引。一般來說,不應(yīng)當(dāng)創(chuàng)立索引的的”這些列具有以下特點(diǎn):
第一,對于那些在查詢中很少使用或者參考的列不應(yīng)當(dāng)創(chuàng)立索引。這是由于,既然這些列很少使用到,因此有索引或者無索引,并不能提高查詢速度。相反,由于增加了索引,反而降低了系統(tǒng)的維護(hù)速度和增大了空間需求。
其次,對于那些只有很少數(shù)據(jù)值的列也不應(yīng)當(dāng)增加索引。這是由于,由于這些列的取值很少,例如人事表的性別列,在查詢的結(jié)果中,結(jié)果集的數(shù)據(jù)行占了表中數(shù)據(jù)行的很大比例,即需要在表中搜尋的數(shù)據(jù)行的比例很大。增加索引,并不能明顯加快檢索速度。
第三,對于那些定義為text,image和bit數(shù)據(jù)類型的列不應(yīng)當(dāng)增加索引。這是由于,這些列的數(shù)據(jù)量要么相當(dāng)大,要么取值很少。
第四,當(dāng)修改性能遠(yuǎn)遠(yuǎn)大于檢干脆能時,不應(yīng)當(dāng)創(chuàng)立索引。這是由于,修改性能和檢干脆能是相互沖突的。當(dāng)增加索引時,會提高檢干脆能,但是會降低修改性能。當(dāng)削減索引時,會提高修改性能,降低檢干脆能。因此,當(dāng)修改性能遠(yuǎn)遠(yuǎn)大于檢干脆能時,不應(yīng)當(dāng)創(chuàng)立索引。
四、創(chuàng)立索引的方法
創(chuàng)立索引有多種方法,這些方法包括直接創(chuàng)立索引的方法和間接創(chuàng)立索引的方法。
第一,直接創(chuàng)立索引,例如使用CREATEINDEX語句或者使用創(chuàng)立索引向?qū)А?/p>
其次,間接創(chuàng)立索引,例如在表中定義主鍵約束或者唯一性鍵約束時,同時也創(chuàng)立了索引。
9.truncate和delete,drop的區(qū)分:
不同點(diǎn):
1.truncate和delete只刪除數(shù)據(jù)不刪除表的構(gòu)造(定義)
drop語句將刪除表的構(gòu)造被依靠的約束(constrain),觸發(fā)器(trigger),索引(index);依靠于該表的存儲過程/函數(shù)將保存,但是變?yōu)閕nvalid狀態(tài).
2.delete語句是dml,這個操作會放到rollbacksegement中,事務(wù)提交之后才生效;假如有相應(yīng)的trigger,執(zhí)行的時候?qū)⒈挥|發(fā).
truncate,drop是ddl,操作馬上生效,原數(shù)據(jù)不放到rollbacksegment中,不能回滾.操作不觸發(fā)trigger.
3.delete語句不影響表所占用的extent,高水線(highwatermark)保持原位置不動
明顯drop語句將表所占用的空間全部釋放
truncate語句缺省狀況下見空間釋放到minextents個extent,除非使用reusestorage;truncate會將高水線復(fù)位(回到最開頭).
4.速度,一般來說:drop;truncate;delete
5.安全性:當(dāng)心使用drop和trunc
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度大米產(chǎn)業(yè)鏈大數(shù)據(jù)分析合同2025年度4篇
- 針對2025年度教育項目投資的擔(dān)保合同
- 2025年度環(huán)保材料研發(fā)與銷售合同范本4篇
- 二零二五版煤炭資源勘查技術(shù)服務(wù)合同4篇
- 2025年度個人二手家具買賣合同參考3篇
- 2025年度模板工建筑工程消防設(shè)施合同范本(含合規(guī)性檢測)4篇
- 個人無抵押信用貸款合同范本(2024年版)版
- 2025年度鏟車租賃與環(huán)保材料運(yùn)輸合同3篇
- 二零二五版高端兒童安全座椅采購合同范本2篇
- 2025年度門店安全與環(huán)保責(zé)任合同范本4篇
- 中外美術(shù)史試題及答案
- 工會換屆公示文件模板
- 江蘇省南京市協(xié)同體七校2024-2025學(xué)年高三上學(xué)期期中聯(lián)合考試英語試題答案
- 青島版二年級下冊三位數(shù)加減三位數(shù)豎式計算題200道及答案
- GB/T 12723-2024單位產(chǎn)品能源消耗限額編制通則
- GB/T 16288-2024塑料制品的標(biāo)志
- 麻風(fēng)病防治知識課件
- 干部職級晉升積分制管理辦法
- TSG ZF003-2011《爆破片裝置安全技術(shù)監(jiān)察規(guī)程》
- 2024年代理記賬工作總結(jié)6篇
- 電氣工程預(yù)算實(shí)例:清單與計價樣本
評論
0/150
提交評論