client.java

来自「用java写的浏览器的服务器和客户端程序」· Java 代码 · 共 97 行

JAVA
97
字号
/**
 * Email: taorundong@126.com
 *
 * @author taorundong
 * @version 1.00 07/02/04
 */
 
 import java.net.*;
 import java.io.*;
 
 public class Client{
 	
 	private
 	DataInputStream input = null;
 	DataOutputStream output = null;
 	String message = null;
 	Socket own = null;
 	
 	
 	Client(){
 		
 		try{
 			own = new Socket((InetAddress.getLocalHost()),6000);
 		}
 		catch(Exception e){
 			e.printStackTrace();
 		}
 		
  		try{
 			input = new DataInputStream(own.getInputStream());
 			output = new DataOutputStream(own.getOutputStream());
 		}
 		catch(Exception e){
 			e.printStackTrace();
 		}
 	
 		init();
 		chat();
 		
 	}
 	
 	public void init(){
 		
 		if(own.isConnected()){
 			try{
 				output.writeUTF(NameRequest.getClientName());
 				message = input.readUTF();
 				//System.out.println(getMessage());
 			}
 			catch(Exception e){
 				e.printStackTrace();
 				initError();
 			}
 			
 		}
 	}
 	
 	public void chat(){
 		
 		for(int i=0;i<10;i++){
 			try{
 				Thread.sleep(3000);
 				output.writeUTF("Hello");
 				message = input.readUTF();
 				//System.out.println("send"+getMessage());
 			}
 			catch(Exception e){
 				e.printStackTrace();
 				chatError();
 				Thread.currentThread().destroy();
 			}
 		}
 		try{
 			own.close();
 		}
 		catch(Exception e){
 			e.printStackTrace();
 		}
 	}
 	
 	public String getMessage(){
 		return message;
 	}
 	
 	public String initError(){
 		return "Net init error!";
 	}
 	
 	public String chatError(){
 		return "Error when chating!";
 	}
 	
 	public static void main(String args[]){
 		new Client();
 	}
 	
 }

⌨️ 快捷键说明

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