线程“main”中的异常

时间:2016-04-02 11:41:52

标签: java intrusion-detection multi-agent

我在线程“main”中遇到异常java.lang.Error:未解析的编译。

我做错了什么?

public class idsbasedagent{
    JDCaptor captor ;

    public idsbasedagent(){
        captor=new JDCaptor();
    }

    public static void main(String[] args){
        System.out.println("؟ھت¼×¥°ü");
        idsbasedagent agent=new idsbasedagent();
        agent.capturesFromDevice();
    }
}

主题“main”中的异常:

  

java.lang.Error:未解决的编译问题:

     

capturesFromDevice()

处的idsbasedagent类型未定义方法idsbasedagent.main(idsbasedagent.java:11)

2 个答案:

答案 0 :(得分:2)

主要方法是调用方法" capturesFromDevice"在"代理"对象类型" idsbasedagent"。但是,你的班级" idsbasedagent"没有方法" capturesFromDevice()"在其中定义。所以你需要为例如:

定义该方法
public class idsbasedagent{
    JDCaptor captor ;

    public idsbasedagent(){
        //...
    }

    public void captureFromDevice() {
        //implementation
    }
}

或者可能是" captureFromDevice"是JDCaptor类的一种方法。在这种情况下,您需要在代理商的" captor"成员变量如下:

agent.captor.captureFromDevice()

旁注:关于类名,java编码约定规定类/接口应该大写。看看这个:http://www.oracle.com/technetwork/java/codeconventions-135099.html

其他常规主题可在此处找到: http://www.oracle.com/technetwork/java/codeconvtoc-136057.html

希望有所帮助。

答案 1 :(得分:0)

如果您希望其实例能够调用它,则类idsbasedagent应该有一个方法'capturesFromDevice'。

您无法调用尚未定义的方法。

public class idsbasedagent{
JDCaptor captor ;

public idsbasedagent(){
    captor=new JDCaptor();
}

public void capturesFromDevice(){
    //Method action here
}

public static void main(String[] args){
    System.out.println("؟ھت¼×¥°ü");
    idsbasedagent agent=new idsbasedagent();
    agent.capturesFromDevice();
}
}