Let's get started <<<
1)關鍵字volatile、transient各有什麼作用?
2)下面兩種使用synchronized關鍵字的方式有什麼區別?
// 第一種
synchronized(this) {
...
}
// 第二種
synchronized(A.class) {
...
}
複製程式碼
3)ArrayList和LinkedList對比,誰的查詢效率更高,為什麼?
4)HashMap和LinkedHashMap有什麼區別?
5)如果要你自己實現一個連結串列,實現資料的增刪改查,需要怎麼做?
6)如果要實現在匿名內部類中訪問外部類的父類方法(該方法在外部類中有重寫),需要怎麼做?
7)執行下面的程式碼可能輸出的結果是什麼?為什麼?
List<Person> persons = new ArrayList<Person>();
persons.add(xxx)
persons.add(xxx)
....
Person person = xxx;
int index = persons.indexOf(person);
System.out.println("Index = " + index);
複製程式碼
8)什麼是ThreadLocal,有什麼作用?
9)Java語言防止併發問題有幾種解決方案?最佳解決方案是什麼?
10)下面的程式碼會觸發空指標異常嗎?如果會,有沒有什麼更好的寫法?
if(obj instanceOf Person) {}
if(str.equals("abc")) {}
複製程式碼
一共十道題,如果你恰好一道都不會。恭喜你,你果然基礎差到爆,推薦你去看馬士兵的Java基礎視訊,不要問我馬士兵是誰哦。
下面是你的基礎等級:
答對 | 評分 | 評價 |
---|---|---|
1~4 | 10 ~ 40 | 基礎較差 |
4~6 | 40 ~ 60 | 基礎一般 |
6~8 | 60 ~ 80 | 基礎較好 |
>8 | 80 ~ 100 | 基礎紮實 |
後記
如果你對上面的測試題有任何疑問的話,請微信搜尋公眾號歐陽鋒工作室,點選關注,答案會通過微信公眾號推送給大家。也可以通過微信掃描下方的二維碼關注歐陽鋒工作室公眾號,我在公眾號等你哦。
加倍努力,證明你想要的不是空中樓閣,勝利往往是在多次失敗之後才姍姍而來
加油!You can do it。
檢視答案方法
關注微信公眾號歐陽鋒工作室,並回復“Java測試題答案”即可檢視答案。