⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 receiver.java

📁 经典的传教士过河问题的java swt实现
💻 JAVA
字号:
package client;
import java.net.*;
import java.util.*;
import java.net.*;
import java.io.*;
import fishinfo.FishInfo;

public class Receiver extends Thread{

       private DatagramPacket packet;
       private DatagramSocket socket;
       byte[] recvBuf = new byte[500];
       FishInfo  fishinfo;
       FishPanel  fishpanel;
       boolean running = true;

       public Receiver(FishPanel  fishpanel){
       super();

       try{
       socket = new DatagramSocket(5001);
       }catch(SocketException e)
       {e.printStackTrace();}

       this.fishpanel = fishpanel;

       start();
       }
       public void run(){
       while(running)
       {
       try{
       //创建udp包以接受数据。

       packet = new DatagramPacket(recvBuf,recvBuf.length);
        socket.receive(packet);
        ByteArrayInputStream byteStream = new
                           ByteArrayInputStream(recvBuf);
        ObjectInputStream is = new ObjectInputStream(new
                           BufferedInputStream(byteStream));
        Object o = is.readObject();
        fishinfo = (FishInfo)o;
        fishpanel.addFish(fishinfo); //将接收到的'游鱼'加入面板中
       is.close();
       //调用面板类,根据收到的消息,添加鱼
       }
         catch(Throwable t) {
            t.printStackTrace();
       }
       }
       }
}

⌨️ 快捷键说明

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