1. 程式人生 > >20165208 2017-2018-2 《Java程序設計》第九周學習總結

20165208 2017-2018-2 《Java程序設計》第九周學習總結

域名 local 技術分享 運行 服務器 網絡 ip地址 lex 生成

20165208 2017-2018-2 《Java程序設計》第九周學習總結

教材學習內容總結

第十三章

URL類

  • URL對象包含三部分信息:協議、地址和資源
  • 創建URL對象兩種方法:

    public URL (String spec) throws MalformedURLException

    public URL(String protocol,String host,String file) throws MalformedURLException
  • 使用字符串初始化一個URL對象URL url=new URL("http://www.google.com")

InetAddress類

方法名 用途
getByName(String s) 將域名或IP地址傳遞給參數s獲得一個InetAddress對象
getHostName() 獲取InetAddress對象所含的域名
getHostAddress() 獲取InetAddress對象所含的IP地址
getLocalHost() 獲得含有本地機器的域名和IP地址

套接字

  • 網絡套接字:端口號和IP地址的組合
  • 端口號標識服務器上的進程
  • 客戶端套接字:Socket類建立負責連接到服務器的套接字對象,構造方法Socket(String host,int port),host是服務器的IP地址,port是端口號。
  • 服務器端:ServerSocket(int port)
    構造對象,port是與客戶呼叫的端口號相同的端口。

UDP數據報

  • 特點:快但是不準
  • 步驟:
  1. 創建待發送數據報:DatagramPacket(byte data[],int length,InetAddtress address,int port)DatagramPack(byte data[],int offset,int length,InetAddtress address,int port)
  2. 發送數據報
  3. 接收數據報

廣播數據報

  • 四類地址包括:A類、B類、C類、D類
  • D類地址也稱作一個組播地址,有關廣播數據或接收廣播都需要加入到同一個D類地址。

遠程調用

遠程對象必須實現java.rmi包中的Remote接口,只有實現該接口的類的實例才被RMI認為是一個遠程對象

教材學習中的問題和解決過程

問題一:書中提到了存根,它的作用是什麽,為什麽要去生成它?

解決一:存根類是一個類,它實現了一個接口,但是實現後的每個方法都是空的。

它的作用是:如果一個接口有很多方法,如果要實現這個接口,就要實現所有的方法。但是一個類從業務來說,可能只需要其中一兩個方法。如果直接去實現這個接口,除了實現所需的方法,還要實現其他所有的無關方法。而如果通過繼承存根類就實現接口,就免去了這種麻煩

代碼托管

  • 技術分享圖片

上周考試錯題總結

  1. 下面代碼中共有()個線程?
    ```
    public class ThreadTest {
    public static void main(String args[]){
    MyThread myThread =new MyThread();
    Thread t1=new Thread(myThread);
    Thread t2=new Thread(myThread);
    t1.start();
    t2.start();
    }
    }
    class MyThread extends Thread {
    ...
    }

A. 1

B. 2

C. 3

D. 4

分析:這道題在第1次做時我選擇了B,只考慮到了t1,t2,忽略了main所在的主線程。

2. 下列說法正確的是

A. Java語言的一大特性就是內置對多線程的支持。

B. main方法返回時,JVM就會結束Java應用程序。

C. Java應用程序中第一個線程結束後,JVM結束Java應用程序。

D. Java語言使用Thread類及其子類對象來表示線程。

分析:這道題在我查書時翻了斷章取義的錯誤,書上說在main沒有創建其他線程時,main方法返回時,JVM就會結束Java應用
3.

進程的基本狀態有:新建、運行、阻塞、死亡。

A. true

B. false
```
分析:這道題在做的時候很猶豫,教材中所說的進程的四個狀態是:新建、運行、中斷、死亡。上網查資料時顯示有五個狀態分別是創建、就緒、執行、阻塞、終止,根據所給答案分析,阻塞和終斷應該是一個。

參考資料

  • 《Java2 實用教程(第五版)》學習指導

學習進度條

代碼行數(新增/累積) 博客量(新增/累積) 學習時間(新增/累積) 重要成長
目標 5000行 30篇 400小時
第一周 36/36 4/4 30/30
第二周 464/500 1/5 18/48
第三周 832/1332 2/7 17/65
第四周 939/2271 2/9 17/65
第五周 1163/3434 1/10 17/65
第六周 1176/4610 1/11 15/65
第七周 864/5474 2/12 15/80
第八周 703/6177 2/14 15/80
第九周 1488/7665 2/16 16/96

20165208 2017-2018-2 《Java程序設計》第九周學習總結