帮我用java写一个类class TheSender extends Thread,将string内容从客户端发送给服务端
时间: 2024-03-05 21:47:25 浏览: 76
好的,以下是一个简单的 Java 类,继承自 `Thread`,可以将字符串内容从客户端发送到服务端:
```java
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
public class TheSender extends Thread {
private String serverAddress; // 服务端地址
private int serverPort; // 服务端端口号
private String message; // 要发送的消息
public TheSender(String serverAddress, int serverPort, String message) {
this.serverAddress = serverAddress;
this.serverPort = serverPort;
this.message = message;
}
public void run() {
try {
Socket socket = new Socket(serverAddress, serverPort);
OutputStream outputStream = socket.getOutputStream();
outputStream.write(message.getBytes());
outputStream.flush();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
如上所示,这个类也有两个属性:`serverAddress` 和 `serverPort`,分别表示服务端的 IP 地址和端口号。`message` 属性表示要发送的消息,由构造方法初始化。
`run` 方法是 `Thread` 类的一个重要方法,重写它可以在启动线程时自动执行。在这个方法中,同样是通过 `Socket` 建立连接并获取输出流,将消息转换成字节数组写入输出流中发送给服务端。最后关闭连接。
需要注意的是,线程启动后会自动执行 `run` 方法,因此可以通过创建多个 `TheSender` 对象,分别传入不同的参数,来实现同时向多个客户端发送消息的功能。
阅读全文