Java 中的 Socket(套接字) 是 Java 提供的一种用于网络通信的编程接口,位于 java.net 包中。它封装了底层操作系统的 TCP/IP 或 UDP 通信机制,让 Java 程序可以方便地进行网络数据交换。
Socket(套接字) 是网络上两个程序之间进行双向通信的端点。
可以简单理解为:
网络中的“电话接口”——一端拨号(客户端),一端接听(服务器),建立连接后就可以互相说话(传数据)。
Socket:客户端套接字ServerSocket:服务器端套接字✅ 特点:
DatagramSocketDatagramPacket✅ 特点:
import java.net.*;
import java.io.*;
public class Server {
public static void main(String[] args) throws Exception {
ServerSocket serverSocket = new ServerSocket(8888);
System.out.println("服务器启动,等待连接...");
Socket socket = serverSocket.accept(); // 阻塞等待
BufferedReader in = new BufferedReader(
new InputStreamReader(socket.getInputStream()));
String msg = in.readLine();
System.out.println("客户端说:" + msg);
socket.close();
serverSocket.close();
}
}
import java.net.*;
import java.io.*;
public class Client {
public static void main(String[] args) throws Exception {
Socket socket = new Socket("localhost", 8888);
PrintWriter out = new PrintWriter(
socket.getOutputStream(), true);
out.println("你好,服务器!");
socket.close();
}
}
服务器端:
ServerSocketaccept() 等待连接客户端:
Socket(指定 IP + 端口)socket.getInputStream(); // 输入流
socket.getOutputStream(); // 输出流
socket.getPort(); // 端口
socket.getInetAddress(); // IP 地址
socket.close(); // 关闭
Java Socket 就是 Java 提供的一套网络通信 API,用来让两台计算机通过网络“对话”。
如果你愿意,我也可以:
你想深入哪一块?
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。