A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. class Send implements Runnable
  2. {
  3.         private DatagramSocket ds;
  4.         public Send(DatagramSocket ds)
  5.         {
  6.                 this.ds = ds;
  7.         }
  8.         public void run()
  9.         {
  10.                 try
  11.                 {
  12.                         BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));

  13.                         String line = null;
  14.                         while((line=bufr.readLine())!=null)
  15.                         {
  16.                                 if("886".equals(line))
  17.                                         break;

  18.                                 byte[] data = line.getBytes();

  19.                                 DatagramPacket dp = new DatagramPacket(data,data.length,InetAddress.getByName("192.168.1.101"),10002);
  20.                                 ds.send(dp);
  21.                         }
  22.                 }
  23.                 catch (Exception e)
  24.                 {
  25.                         throw new RuntimeException("发送端失败!");
  26.                 }
  27.         }
  28. }

  29. class Rece implements Runnable
  30. {
  31.         private DatagramSocket ds;
  32.         public Rece(DatagramSocket ds)
  33.         {
  34.                 this.ds = ds;
  35.         }
  36.         public void run()
  37.         {
  38.                 try
  39.                 {
  40.                         while(true)
  41.                         {
  42.                                 byte[] buf = new byte[1024];
  43.                                 DatagramPacket dp = new DatagramPacket(buf,buf.length);

  44.                                 ds.receive(dp);

  45.                                 String ip = dp.getAddress().getHostAddress();
  46.                                 String data = new String(dp.getData(),0,dp.getLength());

  47.                                 System.out.println("ip:"+ip+"data:"+data);
  48.                         }
  49.                 }
  50.                 catch (Exception e)
  51.                 {
  52.                         throw new RuntimeException("接受端失败!");
  53.                 }               
  54.         }
  55. }

  56. class ChatDemo
  57. {
  58.         public static void main(String[] args) throws Exception
  59.         {
  60.                 Send s = new Send(new DatagramSocket());
  61.                 Rece r = new Rece(new DatagramSocket(10002));

  62.                 new Thread(s).start();
  63.                 new Thread(r).start();
  64.         }
  65. }
复制代码

以上是测试的代码,问题是,以上代码使用的是一个java虚拟机,请问,怎么样进行测试呢?
通过测试,以上的代码确实是运行了发送端和接收端的测试方法的。只是不知道怎么才能进行聊天,特此请教。

评分

参与人数 1技术分 +1 收起 理由
ily521125 + 1

查看全部评分

1 个回复

倒序浏览
要怎么聊天?
你这个不是可以给自己发送消息了吗
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马