一道关于网络编程及多线程的Java编程题目
利用ServerSocket和Socket类的实例,编写并实现一个具有简单功能的聊天软件,具体步骤如下:1.创建及生成服务器端的ServerSocket类实例;2.创建两...
利用ServerSocket和Socket类的实例,编写并实现一个具有简单功能的聊天软件,
具体步骤如下:
1. 创建及生成服务器端的ServerSocket类实例;
2. 创建两个服务器端线程:一个用于接收键盘输入,一个用于向客户端发送信息;
3. 建立客户端的Socket实例
4. 创建两个客户端线程:一个用于接收键盘输入,一个用于向服务器端发送信息;
import java.net.* ;
import java.io.* ;
public class EchoThreadServer{
public static void main(String args[]) throws Exception { // 所有异常抛出
ServerSocket server = null ; // 定义ServerSocket类
Socket client = null ; // 表示客户端
server = new ServerSocket(8888) ; // 服务器在8888端口上监听
boolean f = true ; // 定义个标记位
while(f){
System.out.println("服务器运行,等待客户端连接。") ;
client = server.accept() ; // 得到连接,程序进入到阻塞状态
new Thread(new EchoThread(client)).start() ; // 每一个客户端表示一个线程
}
server.close() ;
}
}; 展开
具体步骤如下:
1. 创建及生成服务器端的ServerSocket类实例;
2. 创建两个服务器端线程:一个用于接收键盘输入,一个用于向客户端发送信息;
3. 建立客户端的Socket实例
4. 创建两个客户端线程:一个用于接收键盘输入,一个用于向服务器端发送信息;
import java.net.* ;
import java.io.* ;
public class EchoThreadServer{
public static void main(String args[]) throws Exception { // 所有异常抛出
ServerSocket server = null ; // 定义ServerSocket类
Socket client = null ; // 表示客户端
server = new ServerSocket(8888) ; // 服务器在8888端口上监听
boolean f = true ; // 定义个标记位
while(f){
System.out.println("服务器运行,等待客户端连接。") ;
client = server.accept() ; // 得到连接,程序进入到阻塞状态
new Thread(new EchoThread(client)).start() ; // 每一个客户端表示一个线程
}
server.close() ;
}
}; 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询