import java.io.InputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
/**
* 服务端
* @author Administrator
*
*/
public class S {
public static void main(String[] args) throws Exception {
ServerSocket server = new ServerSocket(8081);
Socket socket = server.accept();
//取得对方socket的输入流并对其操作封装为对象流,但如果对方socket不先输出的话
//是无法取得该输入流的,这样会一直处理阻塞状态,界面会卡住
ObjectInputStream in = new ObjectInputStream(socket.getInputStream());
ObjectOutputStream out = new ObjectOutputStream(socket
.getOutputStream());
//但如果只获得输入流不操作的话是不会卡住的
// InputStream in = socket.getInputStream();
// OutputStream out = socket.getOutputStream();
}
}
客户端代码如下:
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.net.Socket;
/**
* 客户端
* @author Administrator
*
*/
public class C {
public static void main(String[] args) throws Exception {
Socket socket = new Socket("127.0.0.1", 8081);
//要先输出才不会造成界面卡住
ObjectInputStream in = new ObjectInputStream(socket.getInputStream());
ObjectOutputStream out = new ObjectOutputStream(socket
.getOutputStream());
// InputStream in = socket.getInputStream();
// OutputStream out = socket.getOutputStream();
}
}