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

📄 serverpoint.java

📁 是用java写的聊天室代码和文档
💻 JAVA
字号:
 import   java.net.*;  
  import   java.io.*;  
   
  public   class   ServerPoint   extends   Thread{  
      static   int   SERVERPORT=8088;  
      private   Socket   client;  
      public   static   int   i=0;  
      public   static   String[]   vct=new   String[10];      
      public   ServerPoint(){}  
      public   void   run(){  
          ClientThread.log("服务器端程序启动...");  
          try{  
            ServerSocket   server=new   ServerSocket(SERVERPORT);  
            while(true){            
                  client=server.accept();                  
                  ClientThread   ct=new   ClientThread(client);  
                ct.start();  
            }  
        }catch(Exception   e){  
            e.printStackTrace();  
            ClientThread.log("服务器端程序关闭。。。");  
            System.exit(0);  
        }  
      }  
      public   static   void   main(String[]   args){  
       
          ServerPoint   sp=new   ServerPoint();  
          sp.start();  
      }  
      public   static   synchronized   void   message(String   msg){  
        vct[i]=msg;  
      i=(i+1)%10;  
      vct[i]="*";  
       
      }  
  }  
  class   ClientThread   extends   Thread{      
  private   static   int   ii=0;  
      private   Socket   s;  
      String   msg=null;  
      ServerSocket   serverSocket=null;  
      Socket   socket=null;  
      BufferedReader   cin=null;  
      PrintWriter   cout=null;      
      public   ClientThread(Socket   s){          
          this.s=s;        
      }  
      public   void   run(){  
          try{          
                cin=new   BufferedReader(  
                      new   InputStreamReader(s.getInputStream()));  
                     
              cout=new   PrintWriter(s.getOutputStream());  
              SendToAll   sta=new   SendToAll();  
              sta.start();                  
              msg=cin.readLine();  
              ii++;  
              System.out.println("some   connect   us!聊天室里总共有"+ii+"个人");  
              while(!msg.equals("exit")){  
              ServerPoint.message(msg);  
              msg=cin.readLine();  
              }  
               
              if(msg.equals("exit"))  
              {   --ii;  
              System.out.print("someone   exit\n聊天室里总共有"+ii+"个人");          
            cin.close();  
              cout.close();  
              s.close();              
              }          
          }catch(Exception   e){  
              e.printStackTrace();  
          }  
      }  
      static   void   log(String   strInfo){  
          System.out.println(strInfo);  
      }  
  class   SendToAll   extends   Thread{  
  private   int   j=-1;  
  public   void   run(){  
  while(true)  
  {  
  try{  
  sleep(500);  
  if(j==-1){  
  if(!ServerPoint.vct[0].equals("*")){  
  cout.println(ServerPoint.vct[0]);  
  cout.flush();  
  j=1;  
  }  
  else   {  
  cout.println(ServerPoint.vct[1]);  
  cout.flush();  
  j=2;  
  }  
  }  
  while(!ServerPoint.vct[j].equals("*"))  
  {  
   
  cout.println(ServerPoint.vct[j]);  
  cout.flush();  
  j=(j+1)%10;  
   
  }  
  }catch(Exception   e){}  
  }  
  }  
  }  
  } 

⌨️ 快捷键说明

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