Socket又称套接字,是基于应用服务与TCP/IP通信之间的一个抽象,将TCP/IP协议里面的通信逻辑进行分装,只要通过一组简单的API就可以实现网络的链接。

分别开两个线程,一个作为服务端,一个作为客户端。客户端主要监听端口上的信息,并以字节流读取并显示,同时在Server类里面,还需要同时开启监听和发送信息的线程。每连上一个客户端,就需要对应开启一个监听信息的线程。
服务器端:
import java.io.*;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;
public class Server extends Netutil {
public static void main(String[] args) {
new Server().Get();
}
/*进入的方法*/
public void Get() {
try {
ServerSocket serverSocket = new ServerSocket(4432);
InetAddress inetAddress = InetAddress.getLocalHost();
// System.out.println("开启服务器");
Socket accept;
while (true) {
accept = serverSocket.accept();
//System.out.println("主机"+accept.getRemoteSocketAddress()+"连接服务器");
Thread hander = new Thread(new Handler(accept));
hander.start();
}
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 内部处理类
*/
class Handler extends Netutil implements Runnable {
Socket socket;
public Handler(Socket socket) {
this.socket = socket;
}
@Override
public void run() {
try {
super.Oprate(socket);
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
客户端:
import java.io.*;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;
public class Server extends Netutil {
public static void main(String[] args) {
new Server().Get();
}
/*进入的方法*/
public void Get() {
try {
ServerSocket serverSocket = new ServerSocket(4432);
InetAddress inetAddress = InetAddress.getLocalHost();
// System.out.println("开启服务器");
Socket accept;
while (true) {
accept = serverSocket.accept();
//System.out.println("主机"+accept.getRemoteSocketAddress()+"连接服务器");
Thread hander = new Thread(new Handler(accept));
hander.start();
}
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 内部处理类
*/
class Handler extends Netutil implements Runnable {
Socket socket;
public Handler(Socket socket) {
this.socket = socket;
}
@Override
public void run() {
try {
super.Oprate(socket);
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
来源:https://www.cnblogs.com/lyp1020k/p/12018506.html