Java編程學(xué)習(xí)高級工程師面試題

Java是一種可以撰寫跨平臺應(yīng)用軟件的面向?qū)ο蟮某绦蛟O(shè)計語言抠藕。Java 技術(shù)具有卓越的通用性饿肺、高效性盾似、平臺移植性和安全性敬辣,廣泛應(yīng)用于PC零院、數(shù)據(jù)中心、游戲控制臺告抄、科學(xué)超級計算機撰茎、移動電話和互聯(lián)網(wǎng),同時擁有全球最大的開發(fā)者專業(yè)社群打洼。

給你學(xué)習(xí)路線:html-css-js-jq-javase-數(shù)據(jù)庫-jsp-servlet-Struts2-hibernate-mybatis-spring4-springmvc-ssh-ssm

今天依然講解Java高級題型面試試題與答案解析逆粹。

小編推薦一個學(xué)Java的學(xué)習(xí)裙【 六五零僻弹,五五四他嚷,六零七 】蹋绽,無論你是大牛還是小白爸舒,是想轉(zhuǎn)行還是想入行都可以來了解一起進步一起學(xué)習(xí)稿蹲!裙內(nèi)有開發(fā)工具扭勉,很多干貨和技術(shù)資料分享苛聘!

short s1 = 1; s1 = s1 + 1;有錯嗎?short s1 = 1; s1 += 1;有錯嗎涂炎?

對于short s1 = 1; s1 = s1 + 1;由于1是int類型设哗,因此s1+1運算結(jié)果也是int 型,需要強制轉(zhuǎn)換類型才能賦值給short型网梢。而short s1 = 1; s1 += 1;可以正確編譯震缭,因為s1+= 1;相當(dāng)于s1 = (short)(s1 + 1);其中有隱含的強制類型轉(zhuǎn)換战虏。

如何實現(xiàn)對象克隆烦感?

1.實現(xiàn)Cloneable接口并重寫Object類中的clone()方法;

2. 實現(xiàn)Serializable接口手趣,通過對象的序列化和反序列化實現(xiàn)克隆,可以實現(xiàn)真正的深度克隆绿渣。

喚醒一個阻塞的線程

如因為Sleep,wait中符,join等阻塞,可以使用interrupted exception異常喚醒舟茶。

說說NIO和IO的區(qū)別

1.NIO少了一次從內(nèi)核空間到用戶空間的拷貝堵第。ByteBuffer.allocateDirect()分配的內(nèi)存使用的是本機內(nèi)存而不是Java堆上的內(nèi)存,和網(wǎng)絡(luò)或者磁盤交互都在操作系統(tǒng)的內(nèi)核空間中發(fā)生隧出。allocateDirect()的區(qū)別在于這塊內(nèi)存不由java堆管理, 但仍然在同一用戶進程內(nèi);

2.NIO以塊處理數(shù)據(jù)胀瞪,IO以流處理數(shù)據(jù);

3.非阻塞凄诞,NIO一個線程可以管理多個輸入輸出通道。

小編推薦一個學(xué)Java的學(xué)習(xí)裙【 六五零帆谍,五五四,六零七 】汛蝙,無論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來了解一起進步一起學(xué)習(xí)窖剑!裙內(nèi)有開發(fā)工具,很多干貨和技術(shù)資料分享西土!

Java NIO與IO區(qū)別

Java中的NIO,BIO需了,AIO分別是什么?

IO的方式通常分為幾種援所,同步阻塞的BIO、同步非阻塞的NIO住拭、異步非阻塞的AIO挪略。

1.BIO滔岳,同步阻塞式IO,簡單理解:一個連接一個線程谱煤。BIO方式適用于連接數(shù)目比較小且固定的架構(gòu)摊求,這種方式對服務(wù)器資源要求比較高刘离,并發(fā)局限于應(yīng)用中睹栖,JDK1.4以前的唯一選擇,但程序直觀簡單易理解野来。

在JDK1.4之前,用Java編寫網(wǎng)絡(luò)請求曼氛,都是建立一個ServerSocket,然后舀患,客戶端建立Socket時就會詢問是否有線程可以處理,如果沒有气破,要么等待,要么被拒絕堵幽。即:一個連接弹澎,要求Server對應(yīng)一個處理線程。

2.NIO苦蒿,同步非阻塞IO殴胧,簡單理解:一個請求一個線程佩迟。NIO方式適用于連接數(shù)目多且連接比較短(輕操作)的架構(gòu),比如聊天服務(wù)器报强,并發(fā)局限于應(yīng)用中,編程比較復(fù)雜秉溉,JDK1.4開始支持。

NIO本身是基于事件驅(qū)動思想來完成的召嘶,其主要想解決的是BIO的大并發(fā)問題: 在使用同步I/O的網(wǎng)絡(luò)應(yīng)用中,如果要同時處理多個客戶端請求弄跌,或是在客戶端要同時和多個服務(wù)器進行通訊甲喝,就必須使用多線程來處理铛只。也就是說糠溜,將每一個客戶端請求分配給一個線程來單獨處理。這樣做雖然可以達到我們的要求诵冒,但同時又會帶來另外一個問題。由于每創(chuàng)建一個線程汽馋,就要為這個線程分配一定的內(nèi)存空間(也叫工作存儲器),而且操作系統(tǒng)本身也對線程的總數(shù)有一定的限制圈盔。如果客戶端的請求過多,服務(wù)端程序可能會因為不堪重負而拒絕客戶端的請求驱敲,甚至服務(wù)器可能會因此而癱瘓。

3.AIO众眨,異步非阻塞IO,簡單理解:一個有效請求一個線程娩梨。AIO方式使用于連接數(shù)目多且連接比較長(重操作)的架構(gòu),比如相冊服務(wù)器狈定,充分調(diào)用OS參與并發(fā)操作,編程比較復(fù)雜措嵌,JDK7開始支持芦缰。

什么是冪等性

所謂冪等企巢,簡單地說让蕾,就是對接口的多次調(diào)用所產(chǎn)生的結(jié)果和調(diào)用一次是一致的。那么我們?yōu)槭裁葱枰涌诰哂袃绲刃阅靥樗祝吭O(shè)想一下以下情形:

在App中下訂單的時候罗丰,點擊確認之后再姑,沒反應(yīng),就又點擊了幾次。在這種情況下绍填,如果無法保證該接口的冪等性,那么將會出現(xiàn)重復(fù)下單問題滔驶。

在接收消息的時候卿闹,消息推送重復(fù)揭糕。如果處理消息的接口無法保證冪等锻霎,那么重復(fù)消費消息產(chǎn)生的影響可能會非常大。

終止線程有幾種方式旋恼?終止線程標記變量為什么是 valotile 類型?

1.線程正常執(zhí)行完畢冰更,正常結(jié)束;

2.監(jiān)視某些條件蜀细,結(jié)束線程的不間斷運行;

3.使用interrupt方法終止線程审葬。在定義exit時奕谭,使用了一個Java關(guān)鍵字volatile涣觉,這個關(guān)鍵字的目的是使exit同步血柳,也就是說在同一時刻只能由一個線程來修改exit的值官册。

小編推薦一個學(xué)Java的學(xué)習(xí)裙【 六五零难捌,五五四,六零七 】根吁,無論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來了解一起進步一起學(xué)習(xí)击敌!裙內(nèi)有開發(fā)工具,很多干貨和技術(shù)資料分享!

Java新生代圣蝎,老年代,持久代徘公,都存儲哪些東西?

新生成的對象首先都是放在年輕代的关面。年輕代的目標就是盡可能快速的收集掉那些生命周期短的對象。在年輕代中經(jīng)歷了N次垃圾回收后仍然存活的對象等太,就會被放到年老代中。因此澈驼,可以認為年老代中存放的都是一些生命周期較長的對象。持久代主要存放的是Java類的類信息缝其。

更多精彩佳文,請關(guān)注内边!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市嘴高,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌拴驮,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,036評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件套啤,死亡現(xiàn)場離奇詭異,居然都是意外死亡潜沦,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評論 3 395
  • 文/潘曉璐 我一進店門唆鸡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人争占,你說我怎么就攤上這事袄琳∪颊В” “怎么了唆樊?”我有些...
    開封第一講書人閱讀 164,411評論 0 354
  • 文/不壞的土叔 我叫張陵刻蟹,是天一觀的道長。 經(jīng)常有香客問我舆瘪,道長,這世上最難降的妖魔是什么英古? 我笑而不...
    開封第一講書人閱讀 58,622評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮召调,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘唠叛。我一直安慰自己,他們只是感情好艺沼,可當(dāng)我...
    茶點故事閱讀 67,661評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著障般,像睡著了一般。 火紅的嫁衣襯著肌膚如雪挽荡。 梳的紋絲不亂的頭發(fā)上藐石,一...
    開封第一講書人閱讀 51,521評論 1 304
  • 那天徐伐,我揣著相機與錄音,去河邊找鬼办素。 笑死祸穷,一個胖子當(dāng)著我的面吹牛性穿,可吹牛的內(nèi)容都是我干的雷滚。 我是一名探鬼主播需曾,決...
    沈念sama閱讀 40,288評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼商源!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起谋减,我...
    開封第一講書人閱讀 39,200評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎出爹,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體严就,經(jīng)...
    沈念sama閱讀 45,644評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,837評論 3 336
  • 正文 我和宋清朗相戀三年渐行,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片铸董。...
    茶點故事閱讀 39,953評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖袒炉,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情我磁,我是刑警寧澤,帶...
    沈念sama閱讀 35,673評論 5 346
  • 正文 年R本政府宣布夺艰,位于F島的核電站,受9級特大地震影響郁副,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜存谎,卻給世界環(huán)境...
    茶點故事閱讀 41,281評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望既荚。 院中可真熱鬧稚失,春花似錦恰聘、人聲如沸吸占。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至初厚,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間惧所,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評論 1 269
  • 我被黑心中介騙來泰國打工下愈, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人势似。 一個月前我還...
    沈念sama閱讀 48,119評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像履因,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子栅迄,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,901評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 相關(guān)概念 面向?qū)ο蟮娜齻€特征 封裝,繼承,多態(tài).這個應(yīng)該是人人皆知.有時候也會加上抽象. 多態(tài)的好處 允許不同類對...
    東經(jīng)315度閱讀 1,942評論 0 8
  • /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home...
    光劍書架上的書閱讀 3,880評論 2 8
  • ~[玫瑰]雪蓮仙子排毒精華貼[玫瑰]像一把無形的手術(shù)刀,把我們的乳腺增生悦即,卵巢囊腫吮成,子宮肌瘤辜梳,痔瘡不知不覺中去掉粱甫,...
    楊珊瑚閱讀 446評論 0 0
  • android 架構(gòu)組件核心類結(jié)構(gòu)(點擊圖片查看大圖) android 架構(gòu)組件生命周期分析(點擊圖片查看大圖) ...
    劉碩jessie閱讀 921評論 0 49
  • 我是個只有三分鐘熱度的孩子冗美,無論做什么事情,都是一陣子熱情過了就沒興致了 我會一瞬間的喜歡看書粉洼,就買很多書來看,看...
    神奇的小Ali閱讀 211評論 0 1