文档详情

第九章网络编程.ppt

发布:2016-09-08约字共96页下载文档
文本预览下载声明
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 样题-1 下面哪些是Object的方法? read write clone toString * 样题-2 给出下面代码: public class Person{ int arr[] = new int[10]; public static void main(String args) { System.out.println(arr[9]); } } 下面哪个说法是正确的? A 编译时将产生错误 B. 编译时正确,运行时将产生错误 C. 输出零 D. 输出空 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 我们只需要对上面的程序做少许修改,就可以使它服务于多个客户端。首先,应该把主程序部分放入一个循环,每接收到一个来自客户端的请求,就启动一个线程来处理他。而主程序则可以继续等待来自其他客户端的请求。 下面看修改以后的程序,可试着启动多个telnet连接它进行测试。 * import java.io.*; import .*; public class MultiTalkClient { int num; public static void main(String args[]) { try{ Socket socket=new Socket(“”,4700); BufferedReader sin=new BufferedReader(new InputStreamReader(System.in)); PrintWriter os=new PrintWriter(socket.getOutputStream()); * BufferedReader is=new BufferedReader( new InputStreamReader(socket.getInputStream())); String readline; readline=sin.readLine(); while(!readline.equals(“bye”)) {os.println(readline); os.flush(); System.out.println(“Client:”+readline); System.out.println(“Server:”+is.readLine()); readline=sin.readLine(); } os.close(); is.close(); * socket.close(); }catch(Exception e) { System.out.println(“Error”+e); } } } * 服务器端程序: MultiTalkServer.java import java.io.*; import .*; public class MultiTalkServer{ static int clientnum=0; public static void main(String args[]) throws IOException { ServerSocket serverSocket=null; boolean listening=true; try{ serverSocket=new ServerSocket(4700); }catch(IOException e) { System.out.println(“Could not listen on port:4700.”); * System.exit(-1); } while(listening) { new ServerThread(serverSocket.accept(),clientnum).start(); clientnum++; } serverSocket.close(); } } * 程序ServerThread.java import java.io.*; import .*; public class ServerThread extends Thread{ Socket socket=null; int clientnum; public ServerThread(Socket socket,int num) { this.socket=
显示全部
相似文档