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

專(zhuān)注Java教育14年 全國(guó)咨詢(xún)/投訴熱線(xiàn):400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) 學(xué)習(xí)攻略 Java學(xué)習(xí) java后端面試題部分參考

java后端面試題部分參考

更新時(shí)間:2020-06-15 11:30:57 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2476次

對(duì)于想從事java的朋友來(lái)說(shuō),都會(huì)遇到java面試題的問(wèn)題,其中也包括了java后端面試題,動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編為大家整理了java后端面試題部分參考,希望對(duì)大家能夠有所幫助。

java后端面試題

1、ThreadLocal(線(xiàn)程變量副本)

Synchronized實(shí)現(xiàn)內(nèi)存共享,ThreadLocal為每個(gè)線(xiàn)程維護(hù)一個(gè)本地變量。

采用空間換時(shí)間,它用于線(xiàn)程間的數(shù)據(jù)隔離,為每一個(gè)使用該變量的線(xiàn)程提供一個(gè)副本,每個(gè)線(xiàn)程都可以獨(dú)立地改變自己的副本,而不會(huì)和其他線(xiàn)程的副本沖突。

ThreadLocal類(lèi)中維護(hù)一個(gè)Map,用于存儲(chǔ)每一個(gè)線(xiàn)程的變量副本,Map中元素的鍵為線(xiàn)程對(duì)象,而值為對(duì)應(yīng)線(xiàn)程的變量副本。

ThreadLocal在Spring中發(fā)揮著巨大的作用,在管理Request作用域中的Bean、事務(wù)管理、任務(wù)調(diào)度、AOP等模塊都出現(xiàn)了它的身影。

Spring中絕大部分Bean都可以聲明成Singleton作用域,采用ThreadLocal進(jìn)行封裝,因此有狀態(tài)的Bean就能夠以singleton的方式在多線(xiàn)程中正常工作了。

2、Java內(nèi)存模型:

Java虛擬機(jī)規(guī)范中將Java運(yùn)行時(shí)數(shù)據(jù)分為六種。

(1)程序計(jì)數(shù)器:是一個(gè)數(shù)據(jù)結(jié)構(gòu),用于保存當(dāng)前正常執(zhí)行的程序的內(nèi)存地址。Java虛擬機(jī)的多線(xiàn)程就是通過(guò)線(xiàn)程輪流切換并分配處理器時(shí)間來(lái)實(shí)現(xiàn)的,為了線(xiàn)程切換后能恢復(fù)到正確的位置,每條線(xiàn)程都需要一個(gè)獨(dú)立的程序計(jì)數(shù)器,互不影響,該區(qū)域?yàn)?ldquo;線(xiàn)程私有”。

(2)Java虛擬機(jī)棧:線(xiàn)程私有的,與線(xiàn)程生命周期相同,用于存儲(chǔ)局部變量表,操作棧,方法返回值。局部變量表放著基本數(shù)據(jù)類(lèi)型,還有對(duì)象的引用。

(3)本地方法棧:跟虛擬機(jī)棧很像,不過(guò)它是為虛擬機(jī)使用到的Native方法服務(wù)。

(4)Java堆:所有線(xiàn)程共享的一塊內(nèi)存區(qū)域,對(duì)象實(shí)例幾乎都在這分配內(nèi)存。

(5)方法區(qū):各個(gè)線(xiàn)程共享的區(qū)域,儲(chǔ)存虛擬機(jī)加載的類(lèi)信息,常量,靜態(tài)變量,編譯后的代碼。

(6)運(yùn)行時(shí)常量池:代表運(yùn)行時(shí)每個(gè)class文件中的常量表。包括幾種常量:編譯時(shí)的數(shù)字常量、方法或者域的引用。

3、類(lèi)加載器工作機(jī)制:

(1)裝載:將Java二進(jìn)制代碼導(dǎo)入jvm中,生成Class文件。

(2)連接:a)校驗(yàn):檢查載入Class文件數(shù)據(jù)的正確性 b)準(zhǔn)備:給類(lèi)的靜態(tài)變量分配存儲(chǔ)空間 c)解析:將符號(hào)引用轉(zhuǎn)成直接引用

(3)初始化:對(duì)類(lèi)的靜態(tài)變量,靜態(tài)方法和靜態(tài)代碼塊執(zhí)行初始化工作。

雙親委派模型:類(lèi)加載器收到類(lèi)加載請(qǐng)求,首先將請(qǐng)求委派給父類(lèi)加載器完成

用戶(hù)自定義加載器->應(yīng)用程序加載器->擴(kuò)展類(lèi)加載器->啟動(dòng)類(lèi)加載器。

4、SpringMVC運(yùn)行原理

(1)客戶(hù)端請(qǐng)求提交到DispatcherServlet

(2)由DispatcherServlet控制器查詢(xún)HandlerMapping,找到并分發(fā)到指定的Controller中。

(3)Controller調(diào)用業(yè)務(wù)邏輯處理后,返回ModelAndView

(4)DispatcherServlet查詢(xún)一個(gè)或多個(gè)ViewResoler視圖解析器,找到ModelAndView指定的視圖

(5)視圖負(fù)責(zé)將結(jié)果顯示到客戶(hù)端

5、HashMap與HashTable的區(qū)別

(1)HashMap是非線(xiàn)程安全的,HashTable是線(xiàn)程安全的。

(2)HashMap的鍵和值都允許有null值存在,而HashTable則不行。

(3)因?yàn)榫€(xiàn)程安全的問(wèn)題,HashMap效率比HashTable的要高。

6、HashMap的實(shí)現(xiàn)機(jī)制:

(1)維護(hù)一個(gè)每個(gè)元素是一個(gè)鏈表的數(shù)組,而且鏈表中的每個(gè)節(jié)點(diǎn)是一個(gè)Entry[]鍵值對(duì)的數(shù)據(jù)結(jié)構(gòu)。

(2)實(shí)現(xiàn)了數(shù)組+鏈表的特性,查找快,插入刪除也快。

(3)對(duì)于每個(gè)key,他對(duì)應(yīng)的數(shù)組索引下標(biāo)是 int i = hash(key.hashcode)&(len-1);

(4)每個(gè)新加入的節(jié)點(diǎn)放在鏈表首,然后該新加入的節(jié)點(diǎn)指向原鏈表首

java后端面試題部分參考

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

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

  • 全國(guó)校區(qū) 2025-04-24 搶座中
  • 全國(guó)校區(qū) 2025-05-15 搶座中
  • 全國(guó)校區(qū) 2025-06-05 搶座中
  • 全國(guó)校區(qū) 2025-06-26 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 亚洲视频不卡 | 5x性区m免费毛片视频看看 | 狠狠色狠狠色88综合日日91 | 国产亚洲第一精品社区麻豆 | 亚洲精品98久久久久久中文字幕 | 日韩中文字幕在线看 | 久久国产精品ww | 天天操人人射 | 亚洲日本中文字幕在线 | 中文字幕人成乱码第一页 | 久久精品一区二区 | 日日做夜夜爱 | 99re这里只有精品在线观看 | 午夜一区二区在线观看 | 日韩一区二区不卡 | 国产极品嫩模大尺度福利视频 | 国产免费私人影院永久免费 | 咪咪爱在线观看 | 99久久精品国产一区二区成人 | 91精品一区二区三区久久久久 | 亚洲 欧洲 另类 综合 自拍 | 亚洲精品成人一区 | 久久久这里有精品999 | 在线播放精品一区二区啪视频 | 国产美女午夜精品福利视频 | a级毛片在线观看 | 色视在线 | 亚洲精品色综合色在线观看 | 免费精品在线视频 | 中文字幕一区二区区免 | 日韩精品久久不卡中文字幕 | 国产不卡视频在线 | 青青草久热精品视频在线观看 | 私人免费影院入口 | 精品久久伊人 | 亚洲精品第一页中文字幕 | 玖玖射 | 中文字幕日本不卡 | 久久99精品一级毛片 | 精品欧美一区二区在线看片 | 国产第一页视频 |