大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) 學(xué)習(xí)攻略 Java學(xué)習(xí) 2020年Java后臺(tái)面試題總結(jié)

2020年Java后臺(tái)面試題總結(jié)

更新時(shí)間:2020-07-24 15:27:13 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2882次

1.Arrays.sort實(shí)現(xiàn)原理和Collection實(shí)現(xiàn)原理

答:Arrays.sort():快排

Collections.sort():MergeSort,后來(lái)變成了TimSort

2.foreach和while的區(qū)別(編譯之后)

答:foreach針對(duì)確定次數(shù);while不確定次數(shù)

3.線程池的種類,區(qū)別和使用場(chǎng)景

答:newCachedThreadPool創(chuàng)建一個(gè)可緩存線程池,如果線程池長(zhǎng)度超過(guò)處理需要,可靈活回收空閑線程,若無(wú)可回收,則新建線程。

newFixedThreadPool創(chuàng)建一個(gè)定長(zhǎng)線程池,可控制線程最大并發(fā)數(shù),超出的線程會(huì)在隊(duì)列中等待。

newScheduledThreadPool創(chuàng)建一個(gè)定長(zhǎng)線程池,支持定時(shí)及周期性任務(wù)執(zhí)行。

newSingleThreadExecutor創(chuàng)建一個(gè)單線程化的線程池,它只會(huì)用唯一的工作線程來(lái)執(zhí)行任務(wù),保證所有任務(wù)按照指定順序(FIFO,LIFO,優(yōu)先級(jí))執(zhí)行。

4.分析線程池的實(shí)現(xiàn)原理和線程的調(diào)度過(guò)程

答:多線程技術(shù)主要解決處理器單元內(nèi)多個(gè)線程執(zhí)行的問(wèn)題,它可以顯著減少處理器單元的閑置時(shí)間,增加處理器單元的吞吐能力。

假設(shè)一個(gè)服務(wù)器完成一項(xiàng)任務(wù)所需時(shí)間為:T1創(chuàng)建線程時(shí)間,T2在線程中執(zhí)行任務(wù)的時(shí)間,T3銷毀線程時(shí)間。

如果:T1+T3遠(yuǎn)大于T2,則可以采用線程池,以提高服務(wù)器性能。

一個(gè)線程池包括以下四個(gè)基本組成部分:

A、線程池管理器(ThreadPool):用于創(chuàng)建并管理線程池,包括創(chuàng)建線程池,銷毀線程池,添加新任務(wù);

B、工作線程(PoolWorker):線程池中線程,在沒(méi)有任務(wù)時(shí)處于等待狀態(tài),可以循環(huán)的執(zhí)行任務(wù);

C、任務(wù)接口(Task):每個(gè)任務(wù)必須實(shí)現(xiàn)的接口,以供工作線程調(diào)度任務(wù)的執(zhí)行,它主要規(guī)定了任務(wù)的入口,任務(wù)執(zhí)行完后的收尾工作,任務(wù)的執(zhí)行狀態(tài)等;

D、任務(wù)隊(duì)列(taskQueue):用于存放沒(méi)有處理的任務(wù)。提供一種緩沖機(jī)制。

線程池技術(shù)正是關(guān)注如何縮短或調(diào)整T1,T3時(shí)間的技術(shù),從而提高服務(wù)器程序性能的。它把T1,T3分別安排在服務(wù)器程序的啟動(dòng)和結(jié)束的時(shí)間段或者一些空閑的時(shí)間段,這樣在服務(wù)器程序處理客戶請(qǐng)求時(shí),不會(huì)有T1,T3的開銷了。

線程池不僅調(diào)整T1,T3產(chǎn)生的時(shí)間段,而且它還顯著減少了創(chuàng)建線程的數(shù)目,重用線程池中的線程。

按照優(yōu)先級(jí)調(diào)度線程。

5.線程池如何調(diào)優(yōu)

答:使用線程池的核心問(wèn)題在于應(yīng)該使用多少線程。利特爾法則、拆分線程池

6.線程池的最大線程數(shù)目根據(jù)什么確定

答:corePoolSize:tasks*tasktime個(gè)線程數(shù)

queueCapacity:corePoolSize/tasktime)*responsetime

maxPoolSize:(每秒任務(wù)-queueCapacity)*(每秒單個(gè)線程處理任務(wù)數(shù)量)

7.動(dòng)態(tài)代理的幾種方式

答:代理模式的作用是:為其他對(duì)象提供一種代理以控制對(duì)這個(gè)對(duì)象的訪問(wèn)。在某些情況下,一個(gè)客戶不想或者不能直接引用另一個(gè)對(duì)象,而代理對(duì)象可以在客戶端和目標(biāo)對(duì)象之間起到中介的作用。

動(dòng)態(tài)代理:在程序運(yùn)行時(shí),運(yùn)用反射機(jī)制動(dòng)態(tài)創(chuàng)建而成。每一個(gè)動(dòng)態(tài)代理類都必須要實(shí)現(xiàn)InvocationHandler這個(gè)接口。

jdk動(dòng)態(tài)代理:jdk動(dòng)態(tài)代理是由Java內(nèi)部的反射機(jī)制來(lái)實(shí)現(xiàn)的,應(yīng)用前提,必須是目標(biāo)類基于統(tǒng)一的接口

cglib動(dòng)態(tài)代理:動(dòng)態(tài)代理框架,借助asm來(lái)實(shí)現(xiàn)的

8.HashMap的并發(fā)問(wèn)題

答:HashMap是非線程安全的,可能造成死循環(huán)。

9.了解LinkedHashMap的應(yīng)用嗎

答:LinkedHashMap是HashMap的一個(gè)子類,它保留插入的順序,輸入順序和輸出順序相同。底層使用hash表和雙向鏈表來(lái)存儲(chǔ)。Eg。LRU緩存

2020年Java后臺(tái)面試題總結(jié)

以上就是動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“2020年Java后臺(tái)面試題總結(jié)”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。

提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)

  • 全國(guó)校區(qū) 2025-06-26 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 国产专区精品 | 久久亚洲国产精品五月天 | 国产亚洲欧美一区二区 | 91激情视频 | 日日天干夜夜人人添 | 月婷婷色狠狠 | 在线观看 一区二区 麻豆 | 97影院理论午夜论不卡 | 澳门久久精品 | 国产亚洲精品sese在线播放 | 亚洲国产美女精品久久久久 | 亚洲高清中文字幕一区二区三区 | 黄色一级片免费网站 | 欧美日韩黄色大片 | 成人精品福利 | 操久久 | 国产激情影院 | 国产高清国内精品福利色噜噜 | 狠狠色婷婷丁香综合久久韩国 | 99热这里只有精品6免费 | 变态捡到女婴h养成调教 | 中文字幕视频在线观看 | 九九精品热 | 激情五月婷婷基地 | 国产福利不卡视频在免费播放 | 天天插夜夜| 成人午夜视频免费看欧美 | 久久香蕉国产线看观看网站 | 亚洲欧美激情精品一区二区 | 久久久久久在线 | 欧美日本在线 | 欧美成人hd| 亚洲人成网站在线观看青青 | 成人高清毛片a | 国产视频精品视频 | 成年女人免费毛片视频永久 | 欧美日韩第二页 | 99re热久久精品这里都是精品 | 成人三级视频在线观看 | 狠狠躁天天躁 | 天天拍夜夜添久久精品免费 |