【Java面試題】Java面試之多執行緒!
歡迎加入我們的學習基地,免費獲取最新BATJ面試題和2020最新簡歷模板(
925050116)!
1:什麼是執行緒?
輕量級的程式
2:執行緒的三個部分是?
處理機
程式碼
資料
3:為什麼使用多執行緒
使UI響應更快
利用多處理器系統
簡化建模
4:程式碼示例:Java中實現多執行緒的兩種方式,包括如何定義多執行緒,如何使用多執行緒
4.1實現Runnable介面
class Thread1 implements Runnable{ public void run(){ //run裡一般寫一個while(true)迴圈 System.out.println(Runnable); } }
4.2繼承Thread
class Thread2 extends Thread{ public void run(){ System.out.println(extends); } }
public class Test{ public static void main(String[] a){ Thread1 r = new Thread1(); Thread t1 = new Thread(r); Thread t2 = new Thread(r); t1.start(); t2.start(); Thread t3 = new Thread2(); t3.start(); } }
5:如何實現執行緒的排程?如何暫停一個執行緒的執行
排程用wait和notify
sleep()
6:什麼是執行緒的優先順序
判斷哪個執行緒先執行的級別
7:簡述sleep方法和wait方法的功能和區別
sleep是讓執行緒休眠一段時間
wait是讓執行緒掛起
8:什麼是守候執行緒
隱藏在後臺持續執行的執行緒
9:什麼是臨界資源
指多個執行緒共享的資源
10:什麼是互斥鎖,Java中如何實現
用來保證在任一時刻只能有一個執行緒來訪問臨界資源的那個標記
用在物件前面限制一段程式碼的執行
用在方法宣告中,表示整個方法為同步方法。
11:什麼是死鎖?如何避免?
如果程式中有多個執行緒競爭多個資源,就可能會產生死鎖。當一個執行緒等待
由另一個執行緒持有的鎖,而後者正在等待已被第一個執行緒持 有的鎖時,就會
發生死鎖。
要避免死鎖,應該確保在獲取多個鎖時,在所有的執行緒中都以相同的順序獲取鎖。
儘量少用臨界資源
12:簡述wait和notify,notifyAll的使用
被鎖定的物件可以呼叫wait()方法,這將導致當前執行緒被阻塞並放棄該物件
的互斥鎖,即解除了wait()方法的當前物件的鎖定狀態,其 他的執行緒就有機
會訪問該物件。
notify使等待佇列上的一個執行緒離開阻塞狀態
notifyAll使等待佇列上的所有執行緒離開阻塞狀態
13:什麼是url?基本的格式是?
統一資源定位器
14:簡述IP,Port,TCP的基本功能
IP代表網路位置
Port代表埠號
TCP可保證不同廠家生產的計算機能在共同網路環境下執行,解決異構網通訊問題,是目前網路通訊的基本協議
15:簡述Java網路模型的基本功能
描述服務端和客戶端的連線過程
16:簡述Java網路程式設計究竟做些什麼?如何做?
1.建立連線
2.準備輸出的資料,流式輸出
3.流式輸入,程式設計業務需要的格式
4.關閉連線
伺服器分配一個埠號。如果客戶請求一個連線,伺服器使用accept()方法開啟socket連線。
客戶在host的port埠建立連線。
伺服器和客戶使用InputStream和OutputStream進行通訊。
17:程式碼示例:基於Socket程式設計
try { ServerSocket s = new ServerSocket(8888); while (true) { Socket s1 = s.accept(); OutputStream os = s1.getOutputStream(); DataOutputStream dos = new DataOutputStream(os); dos.writeUTF("Hello," +s1.getInetAddress() + "port#" + s1.getPort() + "\nbye!"); dos.close(); s1.close(); } }catch (IOException e) { System.out.println("程式執行出錯:" + e); }
18:程式碼示例:基於UDP程式設計
19:TCP和UDP區別
TCP能保證傳輸內容的完整和準確,UDP不能
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69977571/viewspace-2706514/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Java面試之多執行緒&併發篇Java面試執行緒
- Java面試之多執行緒&併發篇(2)Java面試執行緒
- Java面試之多執行緒&併發篇(3)Java面試執行緒
- Java面試之多執行緒&併發篇(4)Java面試執行緒
- Java面試之多執行緒&併發篇(5)Java面試執行緒
- Java面試之多執行緒&併發篇(6)Java面試執行緒
- Java面試之多執行緒&併發篇(7)Java面試執行緒
- Java面試之多執行緒&併發篇(8)Java面試執行緒
- Java面試之多執行緒&併發篇(9)Java面試執行緒
- java多執行緒面試題Java執行緒面試題
- Java執行緒面試題 Top 50Java執行緒面試題
- Java常用面試題之Java多執行緒(十三)Java面試題執行緒
- Java併發--Java執行緒面試題 Top 50Java執行緒面試題
- JAVA執行緒面試題書目錄Java執行緒面試題
- 15個Java多執行緒面試題Java執行緒面試題
- 50個Java多執行緒面試題Java執行緒面試題
- Java執行緒面試題(02) Java執行緒中如何避免死鎖Java執行緒面試題
- java面試一日一題:java執行緒池Java面試執行緒
- Java面試經典題:執行緒池專題Java面試執行緒
- Java 多執行緒面試問題彙總Java執行緒面試
- Java多執行緒面試高配問題---多執行緒(3)🧵Java執行緒面試
- Java必會之多執行緒Java執行緒
- Java執行緒面試題(04) Java中程式與執行緒的真實區別Java執行緒面試題
- 史上最全 Java 多執行緒面試題及答案Java執行緒面試題
- 史上最全Java多執行緒面試題,附答案Java執行緒面試題
- java多執行緒、集合和IO面試題_02Java執行緒面試題
- 精選30道Java多執行緒面試題Java執行緒面試題
- java 多執行緒 併發 面試Java執行緒面試
- Java面試題:執行緒池內“鬧情緒”的執行緒,怎麼辦?Java面試題執行緒
- Java多執行緒與併發基礎面試題Java執行緒面試題
- 萬字長文詳解Java執行緒池面試題Java執行緒面試題
- 【JAVA】【面試】【基礎篇】- 執行緒、鎖Java面試執行緒
- 聊聊面試中的 Java 執行緒池面試Java執行緒
- 突破Java面試(20)-Redis執行緒模型Java面試Redis執行緒模型
- Java執行緒安全面試題,你真的瞭解嗎?Java執行緒面試題
- Java執行緒類相關面試題與答案總結Java執行緒面試題
- 面試系列-40個Java多執行緒問題總結面試Java執行緒
- 15個頂級Java多執行緒面試題及回答Java執行緒面試題