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

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 2020年Java面試題大全及答案

2020年Java面試題大全及答案

更新時間:2020-03-04 12:34:03 來源:動力節點 瀏覽3142次


  1)Java中能創建volatile數組嗎?


  能,Java中可以創建volatile類型數組,不過只是一個指向數組的引用,而不是整個數組。我的意思是,如果改變引用指向的數組,將會受到volatile的保護,但是如果多個線程同時改變數組的元素,volatile標示符就不能起到之前的保護作用了。


  2)volatile能使得一個非原子操作變成原子操作嗎?


  一個典型的例子是在類中有一個long類型的成員變量。如果你知道該成員變量會被多個線程訪問,如計數器、價格等,你最好是將其設置為volatile。為什么?因為Java中讀取long類型變量不是原子的,需要分成兩步,如果一個線程正在修改該long變量的值,另一個線程可能只能看到該值的一半(前32位)。但是對一個volatile型的long或double變量的讀寫是原子。


  3)volatile修飾符的有過什么實踐?


  一種實踐是用volatile修飾long和double變量,使其能按原子類型來讀寫。double和long都是64位寬,因此對這兩種類型的讀是分為兩部分的,第一次讀取第一個32位,然后再讀剩下的32位,這個過程不是原子的,但Java中volatile型的long或double變量的讀寫是原子的。volatile修復符的另一個作用是提供內存屏障(memorybarrier),例如在分布式框架中的應用。簡單的說,就是當你寫一個volatile變量之前,Java內存模型會插入一個寫屏障(writebarrier),讀一個volatile變量之前,會插入一個讀屏障(readbarrier)。意思就是說,在你寫一個volatile域時,能保證任何線程都能看到你寫的值,同時,在寫之前,也能保證任何數值的更新對所有線程是可見的,因為內存屏障會將其他所有寫的值更新到緩存。


  4)volatile類型變量提供什么保證?


  volatile變量提供順序和可見性保證,例如,JVM或者JIT為了獲得更好的性能會對語句重排序,但是volatile類型變量即使在沒有同步塊的情況下賦值也不會與其他語句重排序。volatile提供happens-before的保證,確保一個線程的修改能對其他線程是可見的。某些情況下,volatile還能提供原子性,如讀64位數據類型,像long和double都不是原子的,但volatile類型的double和long就是原子的。


  5)10個線程和2個線程的同步代碼,哪個更容易寫?


  從寫代碼的角度來說,兩者的復雜度是相同的,因為同步代碼與線程數量是相互獨立的。但是同步策略的選擇依賴于線程的數量,因為越多的線程意味著更大的競爭,所以你需要利用同步技術,如鎖分離,這要求更復雜的代碼和專業知識。


2020年Java面試題大全及答案


      以上就是動力節點Java培訓機構小編介紹的“2020年Java面試題大全及答案”的內容,希望對大家有幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。


提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 色视频亚洲| 美女羞羞网站 | 国产偷国产偷亚洲高清在线 | 在线视频一区二区三区 | 毛片大全免费 | 淫视频网站 | 免费观看成人毛片 | 亚洲欧洲日韩国产一区二区三区 | 特黄日韩免费一区二区三区 | 国产亚洲欧美日韩在线看片 | 久久精品国产999久久久 | 99在线观看免费视频 | 免费尤物视频 | 尹人香蕉| 久久频| 亚洲女人逼| 九九热视频在线观看 | 99精品国产一区二区青青牛奶 | 天啪天天久久天天综合啪 | 99热久久精里都是精品66 | 99色影院| 免费香蕉成视频成人网 | 日日摸夜夜添夜夜添一区二区 | 999热成人精品国产免 | 久久高清一级毛片 | 亚洲国产综合视频 | 欧美一级www片免费观看 | 亚洲欧美国产日产综合不卡 | 国产在线视频99 | 60欧美老妇做爰视频 | 青青热在线精品视频免费 | 日韩专区中文字幕 | 日韩人成 | 天天干天天操天天透 | 精品国产调教最大网站女王 | 国产精品高清久久久久久久 | 四虎综合 | 亚洲网站免费 | 欧美久久一区二区三区 | 欧美日本中文 | 欧美日韩乱码毛片免费观看 |