J2SE基礎(chǔ)
九種基本數(shù)據(jù)類型的大小崭倘,以及他們的封裝類犯眠。
Switch能否用string做參數(shù)?
equals與==的區(qū)別肺孤。
Object有哪些公用方法?
Java的四種引用邮绿,強(qiáng)弱軟虛渠旁,用到的場景。
Hashcode的作用船逮。
ArrayList顾腊、LinkedList、Vector的區(qū)別挖胃。
String杂靶、StringBuffer與StringBuilder的區(qū)別梆惯。
Map、Set吗垮、List垛吗、Queue、Stack的特點與用法烁登。
HashMap和HashTable的區(qū)別怯屉。
HashMap和ConcurrentHashMap的區(qū)別,HashMap的底層源碼饵沧。
TreeMap锨络、HashMap、LindedHashMap的區(qū)別狼牺。
Collection包結(jié)構(gòu)羡儿,與Collections的區(qū)別。
try catch finally是钥,try里有return掠归,finally還執(zhí)行么?
Excption與Error包結(jié)構(gòu)悄泥。OOM你遇到過哪些情況虏冻,SOF你遇到過哪些情況。
Java面向?qū)ο蟮娜齻€特征與含義码泞。
Override和Overload的含義去區(qū)別兄旬。
Interface與abstract類的區(qū)別。
Static class 與non static class的區(qū)別余寥。
java多態(tài)的實現(xiàn)原理领铐。
實現(xiàn)多線程的兩種方法:Thread與Runable。
線程同步的方法:sychronized宋舷、lock绪撵、reentrantLock等。
鎖的等級:方法鎖祝蝠、對象鎖音诈、類鎖。
寫出生產(chǎn)者消費者模式绎狭。
ThreadLocal的設(shè)計理念與作用细溅。
ThreadPool用法與優(yōu)勢。
Concurrent包里的其他東西:ArrayBlockingQueue儡嘶、CountDownLatch等等喇聊。
wait()和sleep()的區(qū)別。
foreach與正常for循環(huán)效率對比蹦狂。
Java IO與NIO誓篱。
反射的作用于原理朋贬。
泛型常用特點,List<String>能否轉(zhuǎn)為List<Object>窜骄。
解析XML的幾種方式的原理與特點:DOM锦募、SAX、PULL邻遏。
Java與C++對比糠亩。
Java1.7與1.8新特性。
設(shè)計模式:單例准验、工廠削解、適配器、責(zé)任鏈沟娱、觀察者等等。
JNI的使用腕柜。
Java里有很多很雜的東西济似,有時候需要你閱讀源碼,大多數(shù)可能書里面講的不是太清楚盏缤,需要你在網(wǎng)上尋找答案砰蠢。
推薦書籍:《java核心技術(shù)卷I》《Thinking in java》《java并發(fā)編程》《effictive java》《大話設(shè)計模式》
JVM
內(nèi)存模型以及分區(qū),需要詳細(xì)到每個區(qū)放什么唉铜。
堆里面的分區(qū):Eden台舱,survival from to,老年代潭流,各自的特點竞惋。
對象創(chuàng)建方法,對象的內(nèi)存分配灰嫉,對象的訪問定位拆宛。
GC的兩種判定方法:引用計數(shù)與引用鏈。
GC的三種收集方法:標(biāo)記清除讼撒、標(biāo)記整理浑厚、復(fù)制算法的原理與特點,分別用在什么地方根盒,如果讓你優(yōu)化收集方法钳幅,有什么思路?
GC收集器有哪些炎滞?CMS收集器與G1收集器的特點敢艰。
Minor GC與Full GC分別在什么時候發(fā)生?
幾種常用的內(nèi)存調(diào)試工具:jmap厂榛、jstack盖矫、jconsole丽惭。
類加載的五個過程:加載、驗證辈双、準(zhǔn)備责掏、解析、初始化湃望。
雙親委派模型:Bootstrap ClassLoader换衬、Extension ClassLoader、ApplicationClassLoader证芭。
分派:靜態(tài)分派與動態(tài)分派瞳浦。
JVM過去過來就問了這么些問題,沒怎么變废士,內(nèi)存模型和GC算法這塊問得比較多叫潦,可以在網(wǎng)上多找?guī)灼┛蛠砜纯础?/p>
推薦書籍:《深入理解java虛擬機(jī)》
操作系統(tǒng)
進(jìn)程和線程的區(qū)別。
死鎖的必要條件官硝,怎么處理死鎖矗蕊。
Window內(nèi)存管理方式:段存儲,頁存儲氢架,段頁存儲傻咖。
進(jìn)程的幾種狀態(tài)。
IPC幾種通信方式岖研。
什么是虛擬內(nèi)存卿操。
虛擬地址、邏輯地址孙援、線性地址害淤、物理地址的區(qū)別。
因為是做android的這一塊問得比較少一點拓售,還有可能上我簡歷上沒有寫操作系統(tǒng)的原因筝家。
推薦書籍:《深入理解現(xiàn)代操作系統(tǒng)》
TCP/IP
OSI與TCP/IP各層的結(jié)構(gòu)與功能,都有哪些協(xié)議邻辉。
TCP與UDP的區(qū)別溪王。
TCP報文結(jié)構(gòu)。
TCP的三次握手與四次揮手過程值骇,各個狀態(tài)名稱與含義莹菱,TIMEWAIT的作用。
TCP擁塞控制吱瘩。
TCP滑動窗口與回退N針協(xié)議道伟。
Http的報文結(jié)構(gòu)。
Http的狀態(tài)碼含義。
Http request的幾種類型蜜徽。
Http1.1和Http1.0的區(qū)別
Http怎么處理長連接祝懂。
Cookie與Session的作用于原理。
電腦上訪問一個網(wǎng)頁拘鞋,整個過程是怎么樣的:DNS砚蓬、HTTP、TCP盆色、OSPF灰蛙、IP、ARP隔躲。
Ping的整個過程摩梧。ICMP報文是什么。
C/S模式下使用socket通信宣旱,幾個關(guān)鍵函數(shù)仅父。
IP地址分類。
路由器與交換機(jī)區(qū)別浑吟。
網(wǎng)絡(luò)其實大體分為兩塊驾霜,一個TCP協(xié)議,一個HTTP協(xié)議买置,只要把這兩塊以及相關(guān)協(xié)議搞清楚,一般問題不大强霎。
推薦書籍:《TCP/IP協(xié)議族》
數(shù)據(jù)結(jié)構(gòu)與算法
鏈表與數(shù)組忿项。
隊列和棧,出棧與入棧城舞。
鏈表的刪除轩触、插入、反向家夺。
字符串操作脱柱。
Hash表的hash函數(shù),沖突解決方法有哪些拉馋。
各種排序:冒泡榨为、選擇、插入煌茴、希爾随闺、歸并、快排蔓腐、堆排矩乐、桶排、基數(shù)的原理、平均時間復(fù)雜度散罕、最壞時間復(fù)雜度分歇、空間復(fù)雜度、是否穩(wěn)定欧漱。
快排的partition函數(shù)與歸并的Merge函數(shù)职抡。
對冒泡與快排的改進(jìn)。
二分查找硫椰,與變種二分查找繁调。
二叉樹、B+樹靶草、AVL樹蹄胰、紅黑樹、哈夫曼樹奕翔。
二叉樹的前中后續(xù)遍歷:遞歸與非遞歸寫法裕寨,層序遍歷算法。
圖的BFS與DFS算法派继,最小生成樹prim算法與最短路徑Dijkstra算法宾袜。
KMP算法。
排列組合問題驾窟。
動態(tài)規(guī)劃庆猫、貪心算法、分治算法绅络。(一般不會問到)
大數(shù)據(jù)處理:類似10億條數(shù)據(jù)找出最大的1000個數(shù)………等等
算法的話其實是個重點月培,因為最后都是要你寫代碼,所以算法還是需要花不少時間準(zhǔn)備恩急,這里有太多算法題杉畜,寫不全,我的建議是沒事多在OJ上刷刷題(胖怨В客網(wǎng)此叠、leetcode等),劍指offer上的算法要能理解并自己寫出來随珠,編程之美也推薦看一看灭袁。
推薦書籍:《大話數(shù)據(jù)結(jié)構(gòu)》《劍指offer》《編程之美》
Android
Activity與Fragment的生命周期。
Acitivty的四中啟動模式與特點窗看。
Activity緩存方法简卧。
Service的生命周期,兩種啟動方法烤芦,有什么區(qū)別举娩。
怎么保證service不被殺死。
廣播的兩種注冊方法,有什么區(qū)別铜涉。
Intent的使用方法智玻,可以傳遞哪些數(shù)據(jù)類型。
ContentProvider使用方法芙代。
Thread吊奢、AsycTask、IntentService的使用場景與特點纹烹。
五種布局: FrameLayout 页滚、 LinearLayout 、 AbsoluteLayout 铺呵、 RelativeLayout 裹驰、TableLayout 各自特點及繪制效率對比。
Android的數(shù)據(jù)存儲形式片挂。
Sqlite的基本操作幻林。
Android中的MVC模式。
Merge音念、ViewStub的作用沪饺。
Json有什么優(yōu)劣勢。
動畫有哪兩類闷愤,各有什么特點整葡?
Handler、Loop消息隊列模型讥脐,各部分的作用遭居。
怎樣退出終止App。
Asset目錄與res目錄的區(qū)別攘烛。
Android怎么加速啟動Activity。
Android內(nèi)存優(yōu)化方法:ListView優(yōu)化镀首,及時關(guān)閉資源坟漱,圖片緩存等等。
Android中弱引用與軟引用的應(yīng)用場景更哄。
Bitmap的四中屬性芋齿,與每種屬性隊形的大小。
View與View Group分類成翩。自定義View過程:onMeasure()觅捆、onLayout()、onDraw()麻敌。
Touch事件分發(fā)機(jī)制栅炒。
Android長連接,怎么處理心跳機(jī)制。
Zygote的啟動過程赢赊。
Android IPC:Binder原理乙漓。
你用過什么框架,是否看過源碼释移,是否知道底層原理叭披。
Android5.0、6.0新特性玩讳。
計劃: