- 相關(guān)推薦
Java多線程常見面試問題及解答
問題:進(jìn)程和線程的區(qū)別
解答:一個進(jìn)程對應(yīng)一個程序的執(zhí)行,而一個線程則是進(jìn)程執(zhí)行過程中的一個單獨的執(zhí)行序列,一個進(jìn)程可以包含多個線程,
Java多線程常見面試問題及解答
。線程有時候也被稱為輕量級進(jìn)程.一個Java虛擬機(jī)的實例運行在一個單獨的進(jìn)程中,不同的線程共享Java虛擬機(jī)進(jìn)程所屬的堆內(nèi)存。這也是為什么不同的線程可以訪問同一個對象。線 程彼此共享堆內(nèi)存并保有他們自己獨自的棧空間。這也是為什么當(dāng)一個線程調(diào)用一個方法時,他的局部變量可以保證線程安全。但堆內(nèi)存并不是線程安全的,必須通 過顯示的聲明同步來確保線程安全。
問題:列舉幾種不同的創(chuàng)建線程的方法.
解答:可以通過如下幾種方式:
• 繼承Thread 類
• 實現(xiàn)Runnable 接口
• 使用Executor framework (這會創(chuàng)建一個線程池)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15class
Counter
extends
Thread {
//method where the thread execution will start
public
void
run(){
//logic to execute in a thread
}
//let’s see how to start the threads
public
static
void
main(String[] args){
Thread t1 =
new
Counter();
Thread t2 =
new
Counter();
t1.start();
//start the first thread. This calls the run() method.
t2.start();
//this starts the 2nd thread. This calls the run() method.
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class
Counter
extends
Base
implements
Runnable{
//method where the thread execution will start
public
void
run(){
//logic to execute in a thread
}
//let us see how to start the threads
public
static
void
main(String[] args){
Thread t1 =
new
Thread(
new
Counter());
Thread t2 =
new
Thread(
new
Counter());
t1.start();
//start the first thread. This calls the run() method.
t2.start();
//this starts the 2nd thread. This calls the run() method.
}
}
通過線程池來創(chuàng)建更有效率,
資料共享平臺
《Java多線程常見面試問題及解答》(http://www.szmdbiao.com)。問題:推薦通過哪種方式創(chuàng)建線程,為什么?
解答:最好使用Runnable接口,這樣你的類就不必繼承Thread類,不然當(dāng)你需要多重繼承的時候,你將 一籌莫展(我們都知道Java中的類只能繼承自一個類,但可以同時實現(xiàn)多個接口)。在上面的例子中,因為我們要繼承Base類,所以實現(xiàn)Runnable 接口成了顯而易見的選擇。同時你也要注意到在不同的例子中,線程是如何啟動的。按照面向?qū)ο蟮姆椒ㄕ,你?yīng)該只在希望改變父類的行為的時候才去繼承他。通 過實現(xiàn)Runnable接口來代替繼承Thread類可以告訴使用者Counter是Base類型的一個對象,并會作為線程執(zhí)行。
問題:簡要的說明一下高級線程狀態(tài).
解答:下圖說明了線程的各種狀態(tài).
• 可執(zhí)行(Runnable):當(dāng)調(diào)用start()方法后,一個線程變?yōu)榭蓤?zhí)行狀態(tài),但是并不意味著他會立刻開始真正地執(zhí)行。而是被放入線程池,
【Java多線程常見面試問題及解答】相關(guān)文章:
考研英語面試問題及解答10-09
java開發(fā)面試問題05-20
英文面試常見的問題匯編10-25
面試問題:英文面試中常見問題大全08-06
實習(xí)面試的基本問題和解答指南10-15
外企英文面試最常見的問題09-13
英語面試問題與回答常見的08-25
藝術(shù)類考試常見問題解答08-18
常見的英文面試問題及回答07-09
求職面試常見問題(答案)10-04