您的位置:首頁>正文

綜合性18道面試官必問經典Java面試題!

Java具有簡單性、物件導向、分散式、健壯性、安全性、平臺獨立與可攜性、多執行緒、動態性等特點 。 Java可以編寫桌面應用程式、Web應用程式、分散式系統和嵌入式系統應用程式等。

執行緒的概念

執行緒進程區別

在Java中如何實現執行緒

我們應該是使用Runnable還是Thread?

Thread類的start()和run()方法的區別

start()方法會創建新的執行緒並啟動該執行緒, 所以該方法會調用其他native方法, 而run()方法就是

正常的Java方法調用, 即在原來的執行緒中執行java代碼。

Java中Runnable和Callable的區別

Runnable和Callable都代表要執行緒中執行的任務。 Runnable是JDK1.0加入的, 而Callable確實是在JDK1.5加入的。

區別:Callable的 call() 方法可以返回值和拋出異常,

而Runnable的run()方法不能返回值也不能拋出異常。

Callable是需要使用java.util.concurrent.ExecutorService.submit(Callable)方法提交的, 這樣就可以獲得Future物件, 該物件可以裝載了Callable介面的call()方法的返回結果。

Java中CyclicBarrier和CountDownLatch的區別

簡述Java記憶體模型

Java記憶體模型包含了一系列的規則和指導原則。

Java語言是跨平臺的, Java的記憶體模型確保了Java在不同的作業系統、CPU、記憶體架構上有確定的行為,

特別是在多執行緒的情況下, 一個執行緒所做的變動對其他執行緒是否可見是很重要的, 這叫做先行發生關係:

Java中的volatile變數有什麼特點

執行緒安全的概念, Vector是否是執行緒安全類?

競態條件的概念

Java停止執行緒的方法

執行緒發生異常的結果

如何在執行緒之間共用資料

共用物件(類的靜態變數或類的執行個體變數)

也可以使用阻塞佇列等併發的集合。

notify和notifyAll的區別

wait,notify和notifyAll是Object類的方法的原因

ThreadLocal變數含義(執行緒區域變數)

Java程式師學習交流群515675832, 既有技術大佬, 又有老司機開車, 各位對Java感興趣的可以來交流學習一下, 快樂與技術一起進步。

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示