Socket編程

Socket編程是指利用Socket套接字進(jìn)行網(wǎng)絡(luò)通信的編程技術(shù)。在Java中,我們可以使用java.net包提供的Socket類來實(shí)現(xiàn)Socket編程。下面是一個(gè)簡(jiǎn)單的Socket編程示例:

  1. 創(chuàng)建一個(gè)服務(wù)器端程序:
import java.net.ServerSocket;
import java.net.Socket;
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Server {
    public static void main(String[] args) {
        try {
            ServerSocket serverSocket = new ServerSocket(8888);
            System.out.println("服務(wù)器已啟動(dòng),等待客戶端連接...");
            
            Socket socket = serverSocket.accept();
            System.out.println("客戶端已連接");
            
            BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
            String message = reader.readLine();
            System.out.println("收到客戶端消息:" + message);
            
            socket.close();
            serverSocket.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
  1. 創(chuàng)建一個(gè)客戶端程序:
import java.net.Socket;
import java.io.PrintWriter;

public class Client {
    public static void main(String[] args) {
        try {
            Socket socket = new Socket("127.0.0.1", 8888);
            PrintWriter writer = new PrintWriter(socket.getOutputStream());
            writer.println("Hello, Server!");
            writer.flush();
            
            socket.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

在上面的示例中,服務(wù)器端程序首先創(chuàng)建一個(gè)ServerSocket對(duì)象,并指定端口號(hào)為8888,然后等待客戶端連接。客戶端程序創(chuàng)建一個(gè)Socket對(duì)象,指定服務(wù)器的IP地址和端口號(hào),然后向服務(wù)器發(fā)送消息。

這只是一個(gè)簡(jiǎn)單的Socket編程示例,實(shí)際應(yīng)用中可能需要更復(fù)雜的邏輯來處理網(wǎng)絡(luò)通信。希望這個(gè)簡(jiǎn)單示例可以幫助你入門Socket編程。