- 相關(guān)推薦
JAVA面試題小練習題3,參考答案
T142面試題小練習參考答案(總分100’) Java-OOP&SQL Server部分1) try {}里有一個(gè)return語(yǔ)句,那么緊跟在這個(gè)try后的finally {}里的code會(huì )不會(huì )被執行,什么時(shí)
候被執行,在return前還是后? (8’)
會(huì )執行,finally中的代碼比return 和break語(yǔ)句后執行。
拓展:演示FinallyTest1和FinallyTest代碼。
2) String s = new String("xyz"),創(chuàng )建了幾個(gè)對象?為什么?(10’)
3) x.equals(y)==true,x,y可有不同的hash code,這句話(huà)對不對?(5’)
不對
如果兩個(gè)hashCode()返回的結果相等,則兩個(gè)對象的equals方法不一定相等。 拓展:
一致性
在 Java 應用程序執行期間,在對同一對象多次調用 hashCode 方法時(shí),必須一致地返回相同的整數,前提是將對象進(jìn)行hashcode比較時(shí)所用的信息沒(méi)有被修改。
equals
如果根據 equals(Object) 方法,兩個(gè)對象是 相等的,那么對這兩個(gè)對象中的每個(gè)對象調用 hashCode 方法都必須生成相同的整數結果,
如果根據equals(java.lang.Object)方法,兩個(gè)對象不相等,那么對這兩個(gè)對象中的任一對象上調用 hashCode 方法不一定生成不同的整數結果。
注:這里說(shuō)的equals(Object) 方法是指Object類(lèi)中未被子類(lèi)重寫(xiě)過(guò)的equals方法。 一個(gè)或者兩個(gè)。(未說(shuō)明原因不給分)
4) 數組有沒(méi)有length()這個(gè)方法? String有沒(méi)有length()這個(gè)方法,集合有沒(méi)有length()這個(gè)方法?(9’)
5) IndexOutOfBoundsException是什么異常?空指針異常是什么?(8’)
下標越界異常。NullPointerException 沒(méi)有,只有length屬性,String有這個(gè)方法,集合沒(méi)有,獲取大小用Size()。 6) Which two are valid(有效地) in a class that extends class A? (Choose two)(15’)
public class A {
}
A. public int method1(int a, int b) { return 0; }
B. private int method1(int a, int b) { return 0; }
C. private int method1(int a, long b) { return 0; }
D. public short method1(int a, int b) { return 0; }
E. static protected int method1(int a, int b) { return 0; } protected int method1(int a, int b) { return 0; }
此題考查的是繼承重寫(xiě)問(wèn)題.
當一個(gè)子類(lèi)重寫(xiě)父類(lèi)的方法時(shí),重寫(xiě)的方法的訪(fǎng)問(wèn)權限必須大于等于父類(lèi)的訪(fǎng)問(wèn)權限.
在此題中父類(lèi)中的方法訪(fǎng)問(wèn)權限為protected,子類(lèi)只能是protected或public.這時(shí)A是符合題意的. 由于選項C的形參和父類(lèi)的不一樣,沒(méi)有重寫(xiě)的效果,構成重載,所以在子類(lèi)出現也是沒(méi)問(wèn)題的. 所以此題選:AC 7) 在一個(gè)java原文件中,import, class, package語(yǔ)句的順序是什么?(5’)
Package、import、class
8) 下面兩句SQL語(yǔ)句的檢索結果為何不同?(8’) a) SELECT * FROM TABLE b) SELECT * FROM TABLE WHERE NAME LIKE %% AND ADDR LIKE %%
AND (1_ADDR LIKE %% OR 2_ADDR LIKE %% OR 3_ADDR LIKE %% OR 4_ADDR LIKE %% ) Like ?%%? 相當于not is null, 這個(gè)時(shí)候字段值如果為NULL就無(wú)法取出了
9) 不使用min函數找出表nums里面num最小的數。(8’)
select * from nums where num<=all(select num from nums)
或者 Select top 1 num from nums order by num 10) java中自己寫(xiě)個(gè)類(lèi),也叫java.lang.String,運用目前所學(xué)的知識,你認為可以嗎?為什么?(10’) 不可以,因為包名類(lèi)名不能相同。 拓展:其實(shí)是可以的。類(lèi)的加載器相關(guān)知識能夠解釋這一問(wèn)題,大家課后可以去拓展一下,但我們一般不這樣寫(xiě),因為危險性大于實(shí)用性。
二、邏輯思維能力
1) 你有兩個(gè)罐子,50個(gè)紅色彈球,50個(gè)藍色彈球,隨機選出一個(gè)罐子,隨機選取出一個(gè)彈球放入
罐子,怎么給紅色彈球最大的選中機會(huì )?在你的計劃中,得到紅球的準確幾率是多少?(6’)
2) 對一批編號為1~100,全部開(kāi)關(guān)朝上(開(kāi))的燈進(jìn)行以下*作:凡是1的倍數反方向撥一次開(kāi)關(guān);2的倍數反方向又撥一次開(kāi)關(guān);3的倍數反方向又撥一次開(kāi)關(guān)……問(wèn):最后為關(guān)熄狀態(tài)的燈的編
號。(8’)
(1)最初這100個(gè)全部開(kāi)關(guān)朝上的燈是亮的。每個(gè)燈操作次數如果是奇數,則是關(guān)熄狀態(tài)的燈;每個(gè)燈操作次數如果是偶數,則是亮的狀態(tài)的燈。
(2)“凡是1的倍數反方向撥一次開(kāi)關(guān);2的倍數反方向又撥一次開(kāi)關(guān);3的倍數反方向又撥一次開(kāi)關(guān)…… ”最后每個(gè)燈操作次數不是偶數就是奇數。
(3)1的平方數是1;,2的平方數是4;3的平方數是9;4的平方數是16;------10的平方數是100。
(4)1、4、9、16、25、36、49、64、81、100這10個(gè)數的約數個(gè)數是奇數,其它90個(gè)數約數個(gè)數是偶數,所以編號為完全平方數的燈操作次數為奇數次。而其它編號為非完全平方數的燈操作次數為偶數次。
(5)最后為關(guān)熄狀態(tài)的燈的編號是1、4、9、16、25、36、49、64、81、100。也就是編號為完全平方數的燈。 睜著(zhù)眼睛拿紅色就有最大的機會(huì )了,當然幾率是1/2.
祝每一位同學(xué)都比前一天要進(jìn)步,加油!
【JAVA面試題小練習題3,參考答案】相關(guān)文章:
軟件工程師面試題小練帶參考答案12-21
衛生系統面試題及參考答案11-20
事業(yè)單位面試題目及參考答案02-24
2017年java中高級筆試面試題及答案11-11
面試題精選02-18
分享面試題目 教育職業(yè)面試題11-20
熱門(mén)就業(yè)行業(yè)面試題精選:編輯行業(yè)面試題!11-19
Microsoft 面試題11-19