Java网络嗅探器错误问题

时间:2011-09-01 03:41:46

标签: java packet-sniffers

我正在尝试使用我在网上找到的旧教程在Java中编写数据包嗅探器,但调试时遇到问题。我收到一个错误,说明我的类pktSniffer没有继承抽象方法。

import jpcap.*;
import jpcap.packet.Packet;
import jpcap.PacketReceiver;

public class pktSniffer implements PacketReceiver {

public void handlePacket(Packet packet){

        System.out.println(packet);
}

public static void main(String[] args) throws java.io.IOException{

    NetworkInterface[] lists=jpcap.JpcapCaptor.getDeviceList();

    System.out.println("\n\t\t***Network Sniffer***\n");

    System.out.println("Found the following devices : ");

    for(NetworkInterface s: lists)
    {
        System.out.println("Name: " + s.name +" Description: " + s.description);
    }

    JpcapCaptor jpcap=JpcapCaptor.openDevice(JpcapCaptor.getDeviceList()[1],1000,false,20);
    jpcap.loopPacket(-1,new pktSniffer());

    }
}

1 个答案:

答案 0 :(得分:2)

  

不继承抽象方法

您确定错误并非实施一种抽象方法吗?

根据:

您的方法应该调用receivePacket而不是handlePacket