- 相關(guān)推薦
Java面試經(jīng)歷NO.2
公司名:恒生電子集團子公司-杭州青芝網(wǎng)絡(luò )有限公司
未完成面試題:
1.equal和hashcode方法的作用
2.設計一個(gè)儲存樹(shù)狀結構數據的類(lèi),并設計一個(gè)它的管理器類(lèi),實(shí)現對所有節點(diǎn)的遍歷的方法
3.一道SQL題,有3張表,學(xué)生表、課程表、學(xué)生選課表,要求查出所有學(xué)生未選課程的結果
做錯的面試題:
1.public class StringTest {
public static void main(String[] args) {
StringTest stringTest=new StringTest();
String str="abc";
stringTest.changeStr(str);
System.out.println(str);
}
public void changeStr(String str) {
str="a";
}
}
輸出結果是什么?為什么?
這題的正確答案應該是輸出“abc”,但是我確以先入為主的觀(guān)念,認定了string是引用傳值(因為我自認為這種題不會(huì )考的很深),應該輸出“a”。
其實(shí)string是一個(gè)不可變類(lèi),一旦創(chuàng )建了就不能改變它的值,方法中改變了值,其實(shí)是重新創(chuàng )建了一個(gè)新的對象,而老的對象是不改變的。
總結:
每一個(gè)面試題都要認真的對待,不要小看任何一個(gè)看似簡(jiǎn)單的題;
hashcode方法已經(jīng)第二次考了,說(shuō)明其面試的重要性,需要去研究一下,做做實(shí)驗;
樹(shù)狀結構數據,以前只是用hibernate和數據庫實(shí)現,需要自己寫(xiě)個(gè)類(lèi)去測試一下
SQL題始終都是重點(diǎn),每次面試幾乎都有考到,需要多多練習相關(guān)題目