<a href="http://www.itheima.com" target="blank">android培訓</a>、<a href="http://www.itheima.com" target="blank">java培訓</a>、
網絡編程:
多線程+網絡:
1、服務器端的等待客戶連接代碼( while(true) ),服務器端與單個客戶端交互的代碼放入線程體( run )
2、客戶端如有其他要求,與服務器交互的代碼也要放入線程體
3、ServerSocket和Socket編碼基於TCP/IP協議,重發一切錯誤數據,當網絡不好時會使性能很差
4、Server端
new ServerSocket啓動等待連接線程
在accept後啓動交互線程
注意:交互時注意對應產生,讀寫流對應和次數對應
URL:網址,統一資源定位器
常用的構造器:
URL(String spec)
spec 一個完整的網址(協議+網址)
根據 String 表示形式創建 URL 對象。
URLConnection:與網址進行連接
通過URL的openConnection()方法生成一個URLConnection實例,通過下面兩個方法,進行流的操作
getInputStream()
返回從此打開的連接讀取的輸入流
getOutputStream()
返回寫入到此連接的輸出流。
UDP編程:這種信息傳輸方式相當於傳真,信息打包,在接收端準備紙
特點:
1、一種無連接協議,速度快
2、不保證數據的完整,不會進行重發DatagramSocket和DatagramPacket類:
DatagramSocket:此類表示用來發送和接收數據報包的套接字。
DatagramPacket:數據報包,是UDP下進行傳輸數據的單位,數據存放在字節數組中,其中包括了目標地址和端口以及傳送的信息。
用於接收:
DatagramPacket(byte[] buf , int length) 用於發送:
DatagramPacket(byte[] buf , int length , InetAddress address , int port )
UDP發送端:
1、創建一個DatagramSocket,不需要參數
2、創建一個DatagramPacket,指明接收方的IP地址和端口號
3、發送數據send(DatagramPacket p)
4、關閉DatagramSocket
UDP接收端:
1、創建一個DatagramSocket,指定接收方的IP地址和端口號
2、創建一個DatagramPacket,不需要IP地址和端口號
3、接收數據receive(DatagramPacket p)
4、關閉DatagramSocket