BAT,百度、阿里、騰訊是目前國內互聯網的領航者,能進入這些公司工作,對于很多人來說可能只是一個夢想,你需要與眾不同,尤其現在市場需求更多的程序員,但真正的佼佼者卻是少數。今天我們匯總了一些阿里在java面試時的一些試題,看看你能給自己打多少分呢?
1.Java IO流的層次結構?
2.請說出常用的異常類型?
3.SKU的全稱是什么,SKU與SPU的區別及關系?
4.FileInputStream 在使用完以后,不關閉流,想二次使用可以怎么操作?
5.設計一個分步式登錄系統?
6.Spring加載過程?
7.自己有沒有寫過類似Spring這樣的AOP事務?
8.Java中 try..catch 關閉流的語法糖?
9.如何設計一個秒殺系統?要考慮什么?
10.有沒有遇到進線上GC,出現的癥狀是什么樣的,怎么解決的?
11spring的加載過程?
12.atomic 與 volatile的區別?
13.Thread的 notify()給notifyAll()的區別?
14.notifiy()是喚醒的那一個線程?
15.Thread.sleep()喚醒以后是否需要重新競爭?
16.單例有多少種寫法? 有什么區別? 你常用哪一種單例,為什么用這種?
17.問一個Thread.join()相關的問題?
18.商品相關模塊系統怎么設計數據模型?
19.寫一個JAVA死鎖的列子?
20.如何解決死鎖?
21.GC回收算法,及實現原理?
22.HashMap數據存儲結構? key重復了怎么辦? 是如何解決的?
23.Spring AOP的實現原理,底層用什么實現的?
電話面試主要考察3塊內容:
1、Java的相關基礎知識,開源框架的原理,JVM,多線程,高并發,中間件等;
2、之前項目經歷,運用的技術,遇到的問題,如何解決,個人有什么收獲和成長;
3、對于技術的熱情(平時是否看些技術書籍,逛論壇,寫博客,寫源代碼或程序等);
以上只是部分基本的面試試題,是不是很基礎,高大上的公司也會從扎實的基礎做起的,程序員也是一個積累的過程,想要進入更高階,挑戰還在后面,再加倍努力吧。