⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chatserver.java

📁 贪食蛇的实现源码
💻 JAVA
字号:
package com.henry.networkings;

import java.io.*;
import java.net.*;

public class ChatServer {
    public static void main(String[] args) {
        try {
            int i = 1;

            //1. create a Server socket 
            ServerSocket s = new ServerSocket(2500);
            System.out.println("Server waiting for client on port 1500.") ;
          
            for(;;) {  // multiThreads can start
                 //2. create a socket for incoming client(accept)
                Socket incoming = s.accept();  //get socket for client  每个client一个socket
                Thread t = new MultiHandler (incoming, i);    //每个client一个Thread
               
                t.start() ;  //启动Thread, call run()
                i++;
            }           
        }
        catch(Exception e) {e.printStackTrace();}
    }
}

class MultiHandler  extends  Thread{
    Socket incoming;
    int    counter;  

    public MultiHandler() {}
    public MultiHandler(Socket s, int c) {
        incoming = s;
        counter = c;
    }

    public void run() {
        try {
            BufferedReader in = new BufferedReader(new InputStreamReader(incoming.getInputStream()));
           
   	    while(true) {
                //3. read  data from client  through socket 
                String str = in.readLine() ;
                if ((str == null) || str.equalsIgnoreCase("BYE")) 
		      break;
                
                System.out.println(counter + "  " + str) ;  //print to screen                
            }
            in.close() ; 
        }catch(Exception e) {
              System.out.println();
        }finally {
            try {               
                incoming.close();            
            }catch (Exception e) {System.out.println();}
        }

    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -