前面的文章解析了ArrayList常見(jiàn)的面試點(diǎn),但是有一個(gè)點(diǎn)沒(méi)有提及就是并發(fā)安全的問(wèn)題。面試中也有可能會(huì)問(wèn)到ArrayList為什么線程不安全,有沒(méi)有線程安全的解決方案,那么...
前面的文章解析了ArrayList常見(jiàn)的面試點(diǎn),但是有一個(gè)點(diǎn)沒(méi)有提及就是并發(fā)安全的問(wèn)題。面試中也有可能會(huì)問(wèn)到ArrayList為什么線程不安全,有沒(méi)有線程安全的解決方案,那么...
上文已經(jīng)介紹了JVM內(nèi)存模型中線程私有的部分(虛擬機(jī)棧、本地方發(fā)棧、程序計(jì)數(shù)器),那么本篇文章就來(lái)探討下JVM中線程共享的區(qū)域:堆、方法區(qū) 方法區(qū) 方法區(qū)是JVM規(guī)范中定義的...
ArrayList已經(jīng)在上一個(gè)博客文章中解析了,今天我們來(lái)看看List下又一個(gè)數(shù)據(jù)結(jié)構(gòu)LinkedList。而它和ArrayList最大的不同在于ArrayList是基于數(shù)組...
先說(shuō)下簡(jiǎn)介,這是菜鳥(niǎo)教程上的說(shuō)明:WebSocket 是 HTML5 開(kāi)始提供的一種在單個(gè) TCP 連接上進(jìn)行全雙工通訊的協(xié)議。 WebSocket 使得客戶(hù)端和服務(wù)器之間的...
Spring聲明式事務(wù)操作簡(jiǎn)單,我們平常開(kāi)發(fā)過(guò)程中,只需要在需要事務(wù)控制的方法上面加上@Transactional注解就可以綁定事務(wù)控制。但是其中的參數(shù)配置今天給大家捋一捋,...
索引是數(shù)據(jù)庫(kù)設(shè)計(jì)中特殊的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu),它能使我們的查詢(xún)效率加倍,合理的使用索引讓我們的性能得到質(zhì)的提升,但是開(kāi)發(fā)過(guò)程中,難免各種各樣的業(yè)務(wù)需求可能會(huì)導(dǎo)致我們不意間寫(xiě)的SQL語(yǔ)...
這是微信下單支付的建議時(shí)序圖,我們?cè)谌粘i_(kāi)發(fā)過(guò)程中結(jié)合自身的訂單業(yè)務(wù)場(chǎng)景,進(jìn)行訂單的處理。我這里就以一個(gè)簡(jiǎn)單的購(gòu)買(mǎi)單個(gè)產(chǎn)品的業(yè)務(wù)邏輯展示微信支付的Java后臺(tái)代碼。這里是微信...
1.什么是冪等? 在編程中,一個(gè)冪等操作的特點(diǎn)是其任意多次執(zhí)行所產(chǎn)生的影響均與一次執(zhí)行的影響相同。冪等函數(shù),或冪等方法,是指可以使用相同參數(shù)重復(fù)執(zhí)行,并能獲得相同結(jié)果的函數(shù)。...
ArrayList是Java程序員最常用的數(shù)據(jù)結(jié)構(gòu)這句話說(shuō)的一點(diǎn)都不過(guò)分,平日開(kāi)發(fā)中拿來(lái)接受參數(shù),包裝數(shù)據(jù)使用非常頻繁,但我們,因?yàn)樗褂锰?jiǎn)單,以至于我們好像并不是很在意A...
JVM作為運(yùn)行Java程序的平臺(tái),我們Java程序員必須要去了解它。JVM 能涉及非常龐大的一塊知識(shí)體系, 比如內(nèi)存結(jié)構(gòu)、 垃圾回收、 類(lèi)加載、 性能調(diào)優(yōu)、 JVM 自身優(yōu)化...