日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

资深java面试题及答案整理(一)

發(fā)布時間:2024/8/1 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 资深java面试题及答案整理(一) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

這是我收集的10道高級Java面試問題列表。這些問題主要來自 Java 核心部分 ,不涉及 Java EE 相關(guān)問題。你可能知道這些棘手的 Java 問題的答案,或者覺得這些不足以挑戰(zhàn)你的 Java 知識,但這些問題都是容易在各種 Java 面試中被問到的,而且包括我的朋友和同事在內(nèi)的許多程序員都覺得很難回答。

1. 為什么等待和通知是在 Object 類而不是 Thread 中聲明的?


一個棘手的 Java 問題,如果 Java編程語言不是你設(shè)計的,你怎么能回答這個問題呢。Java編程的常識和深入了解有助于回答這種棘手的 Java 核心方面的面試問題。


為什么 wait,notify 和 notifyAll 是在 Object 類中定義的而不是在 Thread 類中定義


這個問題的好在它能反映了面試者對等待通知機制的了解, 以及他對此主題的理解是否明確。就像為什么 Java 中不支持多繼承或者為什么 String 在 Java 中是 final 的問題一樣,這個問題也可能有多個答案。


為什么在 Object 類中定義 wait 和 notify 方法,每個人都能說出一些理由。 從我的面試經(jīng)驗來看, wait 和 nofity 仍然是大多數(shù)Java 程序員最困惑的,特別是2到3年的開發(fā)人員,如果他們要求使用 wait 和 notify, 他們會很困惑。因此,如果你去參加 Java 面試,請確保對 wait 和 notify 機制有充分的了解,并且可以輕松地使用 wait 來編寫代碼,并通過生產(chǎn)者-消費者問題或?qū)崿F(xiàn)阻塞隊列等了解通知的機制。


為什么等待和通知需要從同步塊或方法中調(diào)用, 以及 Java 中的 wait,sleep 和 yield 方法之間的差異,如果你還沒有讀過,你會覺得有趣。為何 wait,notify 和 notifyAll 屬于 Object 類? 為什么它們不應(yīng)該在 Thread 類中?

以下是我認(rèn)為有意義的一些想法:


1) wait 和 notify 不僅僅是普通方法或同步工具,更重要的是它們是 Java 中兩個線程之間的通信機制。對語言設(shè)計者而言, 如果不能通過 Java 關(guān)鍵字(例如 synchronized)實現(xiàn)通信此機制,同時又要確保這個機制對每個對象可用, 那么 Object 類則是的正確聲明位置。記住同步和等待通知是兩個不同的領(lǐng)域,不要把它們看成是相同的或相關(guān)的。同步是提供互斥并確保 Java 類的線程安全,而 wait 和 notify 是兩個線程之間的通信機制。


2) 每個對象都可上鎖,這是在 Object 類而不是 Thread 類中聲明 wait 和 notify 的另一個原因。


3) 在 Java 中為了進入代碼的臨界區(qū),線程需要鎖定并等待鎖定,他們不知道哪些線程持有鎖,而只是知道鎖被某個線程持有, 并且他們應(yīng)該等待取得鎖, 而不是去了解哪個線程在同步塊內(nèi),并請求它們釋放鎖定。


4) Java 是基于 Hoare 的監(jiān)視器的思想,在Java中,所有對象都有一個監(jiān)視器。


線程在監(jiān)視器上等待,為執(zhí)行等待,我們需要2個參數(shù):


一個線程


一個監(jiān)視器(任何對象)


在 Java 設(shè)計中,線程不能被指定,它總是運行當(dāng)前代碼的線程。但是,我們可以指定監(jiān)視器(這是我們稱之為等待的對象)。這是一個很好的設(shè)計,因為如果我們可以讓任何其他線程在所需的監(jiān)視器上等待,這將導(dǎo)致“入侵”,導(dǎo)致在設(shè)計并發(fā)程序時會遇到困難。請記住,在 Java 中,所有在另一個線程的執(zhí)行中侵入的操作都被棄用了(例如 stop 方法)。

2. 為什么Java中不支持多重繼承?


我發(fā)現(xiàn)這個 Java 核心問題很難回答,因為你的答案可能不會讓面試官滿意,在大多數(shù)情況下,面試官正在尋找答案中的關(guān)鍵點,如果你提到這些關(guān)鍵點,面試官會很高興。在 Java 中回答這種棘手問題的關(guān)鍵是準(zhǔn)備好相關(guān)主題, 以應(yīng)對后續(xù)的各種可能的問題。


這是非常經(jīng)典的問題,與為什么 String 在 Java 中是不可變的很類似; 這兩個問題之間的相似之處在于它們主要是由 Java 創(chuàng)作者的設(shè)計決策使然。

為什么Java不支持多重繼承, 可以考慮以下兩點:


1)第一個原因是圍繞鉆石形繼承問題產(chǎn)生的歧義,考慮一個類 A 有 foo() 方法, 然后 B 和 C 派生自 A, 并且有自己的 foo() 實現(xiàn),現(xiàn)在 D 類使用多個繼承派生自 B 和C,如果我們只引用 foo(), 編譯器將無法決定它應(yīng)該調(diào)用哪個 foo()。這也稱為 Diamond 問題,因為這個繼承方案的結(jié)構(gòu)類似于菱形,見下圖:


A foo()?
/ \?
/ \?
foo() B C foo()?
\ /?
\ /?
D foo()


即使我們刪除鉆石的頂部 A 類并允許多重繼承,我們也將看到這個問題含糊性的一面。如果你把這個理由告訴面試官,他會問為什么 C++ 可以支持多重繼承而 Java不行。嗯,在這種情況下,我會試著向他解釋我下面給出的第二個原因,它不是因為技術(shù)難度, 而是更多的可維護和更清晰的設(shè)計是驅(qū)動因素, 雖然這只能由 Java 言語設(shè)計師確認(rèn),我們只是推測。維基百科鏈接有一些很好的解釋,說明在使用多重繼承時,由于鉆石問題,不同的語言地址問題是如何產(chǎn)生的。


2)對我來說第二個也是更有說服力的理由是,多重繼承確實使設(shè)計復(fù)雜化并在轉(zhuǎn)換、構(gòu)造函數(shù)鏈接等過程中產(chǎn)生問題。假設(shè)你需要多重繼承的情況并不多,簡單起見,明智的決定是省略它。此外,Java 可以通過使用接口支持單繼承來避免這種歧義。由于接口只有方法聲明而且沒有提供任何實現(xiàn),因此只有一個特定方法的實現(xiàn),因此不會有任何歧義。

最后

感謝閱讀,點贊+關(guān)注!更多的java課程學(xué)習(xí)路線,筆記,面試等架構(gòu)資料,想要學(xué)習(xí)的同學(xué)關(guān)注博主+私信“學(xué)習(xí)”或者“面經(jīng)”即可獲得免費資料!!

?

?

總結(jié)

以上是生活随笔為你收集整理的资深java面试题及答案整理(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日批av| 寂寞人妻瑜伽被教练日 | 免费久久精品视频 | 在线观看国产视频 | 在线不卡一区二区 | 男女男精品视频网站 | av天天操| 丁香花五月天 | 天天狠天天插 | 99国产精品无码 | 台湾佬综合网 | 亚洲AV无码国产精品午夜字幕 | 免费看片色 | 日韩精品久久久久久 | 三级视频网站在线观看 | 午夜爱| 麻豆影视在线播放 | 国产成年人视频 | 亚洲一区免费 | 特级西西444www高清大视频 | 亚洲天天在线 | 午夜草逼| 免费av观看网站 | www.爱操| 精品孕妇一区二区三区 | 色欧美视频 | 国产精品乱轮 | 久久国产精品久久精品国产 | 国产亚洲久一区二区 | 欧美交换配乱吟粗大25p | 制服.丝袜.亚洲.中文.综合 | 天堂中文在线免费观看 | 国产乱国产乱老熟300部视频 | 日韩一级性生活片 | av大全在线观看 | 欧美日韩亚洲国产 | 91嫩草视频在线观看 | 国产乱人乱偷精品视频 | 日韩小视频在线 | 中文字幕日本一区二区 | 亚洲国产日韩av | 韩国三色电费2024免费吗怎么看 | 亚洲精品嫩草 | 浮力影院草草 | 久草免费在线视频 | 欧美性aaa| 中字幕视频在线永久在线观看免费 | 欧美日韩中文字幕在线观看 | 免费黄色看片 | 成人18视频 | 99爱视频在线 | 动漫美女隐私无遮挡 | 白白色在线观看 | 91成人午夜 | 风流少妇一区二区三区91 | 被黑人啪到哭的番号922在线 | 成人高清免费 | 国产亚洲性欧美日韩在线观看软件 | 国产精品天美传媒入口 | 日本午夜激情视频 | 色国产精品 | 国产午夜免费视频 | 国产精品作爱 | 亚洲欧美自拍偷拍 | 亚洲精品久久久乳夜夜欧美 | 色吧综合| 欧美男优 | 亚洲一区二区免费在线观看 | 国产精久久久久 | 在线观看国产一区二区三区 | 在线视频欧美一区 | av先锋资源| 国产18在线 | a级性生活视频 | 日韩欧美区| 草草影院第一页 | 久久久午夜精品 | 久久久久久久久久免费视频 | 午夜寂寞自拍 | 欧美日韩在线视频免费播放 | 中文字幕亚洲在线观看 | 88福利视频| 四虎影视黄色 | 蜜桃传媒一区二区亚洲av | 久久亚洲av午夜福利精品一区 | 亚欧在线视频 | 麻豆成人久久精品一区二区三区 | 男女偷爱性视频刺激 | 看全色黄大色黄大片女一次牛 | 欧美成人图区 | 黄色一级生活片 | 色九九视频 | 亚洲aⅴ在线| 五月天视频网 | 亚洲第一综合网 | 欧美色视 | 激情五月婷婷综合网 | 永久av在线 | 亚洲一区二区图片 |