java练习题13

来源:互联网 发布:淘宝网址缩短 编辑:程序博客网 时间:2024/05/20 19:49

使用UDP协议编写一个网络程序,设置接收端程序的监听端口是8001,发送端发送的数据是“Hello, world”。

package test;import java.net.*;public class mytest {    public static void main(String[] args) throws Exception {        byte[] buf=new byte[1024];        DatagramSocket ds=new DatagramSocket(8001);        DatagramPacket dp=new DatagramPacket(buf, 1024);        System.out.println("Hello, world");        ds.receive(dp);        String str=new String(dp.getData(), 0, dp.getLength())+"from"        +dp.getAddress().getHostAddress()+":"+dp.getPort();        System.out.println("str");        ds.close();    }}

这里写图片描述
. 使用TCP协议编写一个网络程序,设置服务器端的监听端口是8002,当与客户端建立连接后,服务器端向客户端发送数据“Hello, world”,客户端收到数据后打印输出

import java.io.*;  import java.net.*;  public class Test04 {      public static void main(String[] args) throws Exception {          new TCPServer().listen();      }  }  class TCPServer {      public void listen() throws Exception {          ServerSocket serverSocket = new ServerSocket(8002);          Socket client = serverSocket.accept();          OutputStream os = client.getOutputStream();          os.write("hello world").getBytes());          Thread.sleep(5000);           os.close();          client.close();      }  }  
import java.io.*;  import java.net.*;  public class Test05 {      public static void main(String[] args) throws Exception {          new TCPClient().connect();      }  }  class TCPClient {                   public void connect() throws Exception {          Socket client = new Socket(InetAddress.getLocalHost(), 8002);          InputStream is = client.getInputStream();               byte[] buf = new byte[1024];          int len = is.read(buf);          System.out.println(new String(buf, 0, len));          client.close();                                          }  }  

这里写图片描述