轉(zhuǎn)載請注明原創(chuàng)出處,謝謝!
- GitHub: @Ricco
這對于我來說也許是世界上最草率的一次面試聊天态蒂,但讓我感受頗多。
本來我不想寫太多基礎(chǔ)的東西手素,但是這個坑我踩了泉懦,還摔了一跤疹瘦,為了防止以后繼續(xù)出現(xiàn)這樣的失誤言沐,所以我還是覺得應(yīng)該寫出來,給自己敲一個警鐘汹押,也給正在讀這篇文章的你起便,留下一點(diǎn)思考榆综。
問題的提出與回答.png
簡單的寒暄奖年,了解了我的基本情況,開始了技術(shù)面試震贵,沒想到水评,第一題的Java基礎(chǔ)我就GG了中燥,藍(lán)瘦香菇!
面試官告訴我怎么回答.png
我決定按照面試官給的建議寫這篇文章吟秩,不得不說绽淘,面試官的思路很清晰。
關(guān)鍵字
- 關(guān)鍵字是電腦語言里事先定義的壮池,有特別意義的標(biāo)識符椰憋,有時又叫保留字赔退,還有特別意義的變量硕旗。
- Java的關(guān)鍵字對Java的編譯器有特殊的意義,他們用來表示一種數(shù)據(jù)類型慧域,或者表示程序的結(jié)構(gòu)等浪读,關(guān)鍵字不能用作變量名碘橘、方法名、類名仰禽、包名和參數(shù)纺蛆。
- Java語言規(guī)定關(guān)鍵字不能作為標(biāo)識符桥氏。
Java關(guān)鍵字
關(guān)鍵字 | 備注 | |
---|---|---|
保留字 | ||
1-1 | const | |
1-2 | goto | |
訪問修飾符 | ||
2-1 | public | 4√所有 |
2-2 | protected | 3√自己+子類 |
2-3 | default | 2√同包 |
2-4 | private | 1√自己 |
面向?qū)ο?/td> | ||
3-1 | class | 類 |
3-2 | abstract | 抽象凤藏,天生當(dāng)?shù)?/td> |
3-3 | extends | 繼承,BaseXXX |
3-4 | interface | 接口揖庄,Retrofit |
3-5 | implements | 實(shí)現(xiàn)接口 |
3-6 | new | 創(chuàng)建新對象 |
包 | ||
4-1 | import | 引入 |
4-2 | package | 定義蹄梢,第一行 |
數(shù)據(jù)類型 | ||
5-1 | boolean | |
5-2 | byte | 1 |
5-3 | char | 2检号,Charater |
5-4 | short | 2 |
5-5 | int | 4齐苛,Integer |
5-6 | float | 4 |
5-7 | long | 8 |
5-8 | double | 8 |
5-9 | void | 無返回值 |
5-10 | null | 恐怖凹蜂,null≠"" |
5-11 | true | |
5-12 | false | |
流程控制 | ||
6-1 | if | |
6-2 | else | |
6-3 | while | |
6-4 | do | |
6-5 | switch | |
6-6 | case | 類型 |
6-7 | default | |
6-8 | for | |
6-9 | break | 跳出循環(huán) |
6-10 | continue | 中斷本次循環(huán) |
6-11 | return | 返回 |
6-12 | instanceof | 雙目運(yùn)算符玛痊,重寫equal |
修飾 | ||
7-1 | static | 靜態(tài)擂煞,塊对省,單例 |
7-2 | final | 最終晾捏,常量 |
7-3 | super | 調(diào)用父類的方法 |
7-4 | this | |
7-5 | native | 本地惦辛,JNI,NDK開發(fā) |
7-6 | synchronized | 線程玻淑,同步呀伙,鎖 |
7-7 | strictfp | 浮點(diǎn)運(yùn)算更加精確 |
7-8 | transient | 不能被序列化 |
7-9 | volatile | 不能解決并發(fā)問題 |
異常處理 | ||
8-1 | try | 捕獲 |
8-2 | catch | 處理 |
8-3 | finally | 有沒有異常都執(zhí)行 |
8-4 | throw | 拋出一個異常對象 |
8-5 | throws | 聲明一個異城常可能被拋出 |
其他 | ||
9-1 | enum | 枚舉 |
9-2 | assert | 斷言 |
簡單自定義LogUtils,throw
public class LogUtils {
public static final boolean isDebug = true;
// 是否需要打印bug麻汰,可以在application的onCreate函數(shù)里面初始化,或者直接修改為false
// 必要時加入日志存儲功能溺职,方便用戶反饋
private LogUtilS() {
/* cannot be instantiated,不能被實(shí)例化 */
throw new UnsupportedOperationException("cannot be instantiated");
}
public static void v(String tag, String msg) {
if (isDebug) {
Log.v(tag, msg);
}
}
public static void d(String tag, String msg) {
if (isDebug) {
Log.d(tag, msg);
}
}
public static void i(String tag, String msg) {
if (isDebug) {
Log.i(tag, msg);
}
}
public static void e(String tag, String msg) {
if (isDebug) {
Log.e(tag, msg);
}
}
}
當(dāng)面試官說出清華倆字的時候浪耘,讓我想起了以前和一位研究生爭3000塊工資的事七冲,求你們规婆,給專科生掘鄙,非985/211的同學(xué)一點(diǎn)機(jī)會嗡髓。
清華都瘋了嗎?
我嚴(yán)重懷疑現(xiàn)在Android就業(yè)不景氣颅夺,不是培訓(xùn)機(jī)構(gòu)的過蛹稍,是清華的過。你都清華北大了拗慨,干什么3/4k的活胺盥?你出來干個3/4的活烦却,大學(xué)在清華干什么其爵?