日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

【Java 网络编程】客户端 Socket 创建

發布時間:2025/6/17 java 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Java 网络编程】客户端 Socket 创建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

        • I TCP 無代理或無參構造函數
        • II 創建 Socket 時指定代理
        • III 創建 Socket 時直接指定服務器地址和端口號
        • IV 創建 Socket 時直接指定服務器地址和端口號 并綁定本地IP地址和端口號
        • V 創建無參 Socket 綁定地址



I TCP 無代理或無參構造函數



Socket socket = new Socket(Proxy.NO_PROXY);

創建 Socket 對象 , 傳入 Proxy.NO_PROXY 參數 , 代表該參數沒有代理模式 ; 該構造函數與下面的無參構造方法是等價的 ;

Socket socket = new Socket();

II 創建 Socket 時指定代理



1. 代理構造函數 : 下面是代理創建的構造函數的方法原型 , 其中的 Type type 是代理類型 , SocketAddress sa 是代理的地址和端口號 ;

public Proxy(Type type, SocketAddress sa)

2. 代理類型選擇 : DIRECT 指的是直連模式 , 即該模式下沒有代理 ; HTTP 代表高層級的協議如 HTTP 或者 FTP 協議 ; SOCKS 代表了 SOCKS4 或 SOCKS5 協議

/*** Represents the proxy type.** @since 1.5*/public enum Type {/*** Represents a direct connection, or the absence of a proxy.*/DIRECT,/*** Represents proxy for high level protocols such as HTTP or FTP.*/HTTP,/*** Represents a SOCKS (V4 or V5) proxy.*/SOCKS};

3. 代理 Socket 示例 : 創建代理 , 并使用代理創建 Socket 示例 ; 通過代理服務器暴露的端口號 , 本地發送的數據先發送到代理服務器上 , 然后通過代理服務器發送和接收數據 ;

//創建代理對象 , 所有的數據通過Proxy proxy = new Proxy(Proxy.Type.HTTP,new InetSocketAddress(Inet4Address.getByName("代理服務器地址"), 代理端口號));Socket socket = new Socket(proxy);

III 創建 Socket 時直接指定服務器地址和端口號



創建 Socket 對象 , 傳入服務器端地址 , 和端口號 , 這是要連接的地址和端口號 ;

Socket socket = new Socket("192.168.1.100", 8888); Socket socket = new Socket(Inet4Address.getLocalHost(), 8888);

IV 創建 Socket 時直接指定服務器地址和端口號 并綁定本地IP地址和端口號



1. IP 地址 : 客戶端 IP 地址 和 服務器端 IP 地址是一樣的 , 都是本地 IP 地址 ;

2. 端口號 : 服務器端端口號是 8888 , 客戶端端口號是 8887 ;

3. 指定內容 : 在創建 Socket 對象時 , 同時指定了服務器端的地址 , 服務器端端口號 , 客戶端 IP 地址 , 客戶端端口號 ;

4. 參數 : 下面的兩種構造函數 , 前兩個參數指定服務器端 IP 地址和端口號 , 后兩個參數指定綁定的客戶端的 IP 地址和端口號 ;

5. 自動連接服務器 : 該 Socket 對象創建成功后 , 會自動連接 , 如果連接失敗 , 會拋出異常 , 該 Socket 創建也會失敗 ;

Socket socket = new Socket("192.168.1.100", 8888, Inet4Address.getLocalHost(), 8887); Socket socket = new Socket(Inet4Address.getLocalHost(), 8888, Inet4Address.getLocalHost(), 8887);

不推薦使用該方法 , 在 Socket 連接之前 , 要先進行各種參數設置 , 這種情況下無法進行詳細的參數配置 , 連接使用的都是默認參數 ;



V 創建無參 Socket 綁定地址



創建 Socket 對象時 , 推薦使用無參構造函數創建對象 , 并進行各種參數設置 , 在 Socket 創建之后 , 可以立刻綁定本地的 IP 地址和端口號 ;

//創建無參的 Socket 對象Socket socket = new Socket();//綁定本地的 IP 地址和端口號socket.bind(new InetSocketAddress(Inet4Address.getLocalHost(), 8887));

總結

以上是生活随笔為你收集整理的【Java 网络编程】客户端 Socket 创建的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。