1

当我尝试从我的主类中调用它时,我在访问单独类中的方法时遇到问题。这是方法

class RobotData
{
    private int junctionRecorder(IRobot robot)
    {
        int[] juncX;
        int[] juncY;
        int[] arrived;
        int[] junctions;
        int i = 0;
    i = junctions[0];
    juncX[i] = robot.getLocationX();
    juncY[i] = robot.getLocationY();
    arrived[i] = robot.getHeading();
    junctions[0]++;
    return i;
    }
}

当我尝试在我的主课中调用它时,使用

public class Test
{
    public void controlRobot(IRobot robot)
    {
    int recordjunction = junctionRecorder(robot);
        //... 

它出现了这个错误

Test.java:7: cannot find symbol
symbol  : method junctionRecorder

任何人都可以帮忙吗?

4

1 回答 1

1

你必须创建一个对象实例来调用它的方法(如果它不是静态的):

public class Test
{
  public void controlRobot(IRobot robot)
  {
    RobotData rd = new RobotData();
    int recordjunction = rd.junctionRecorder(robot);
    //... 

或类似的东西(我想你想这样做):

public class Test
{
  public void controlRobot(IRobot robot)
  {
    int recordjunction = robot.junctionRecorder(robot);
    //... 

但在这种情况下,类RobotData必须实现接口IRobot

class RobotData implements IRobot

而且方法junctionRecorderprivate,你必须做到public

无论如何,我认为您应该首先阅读基础知识(如对象、实例、创建它们等)并确保您理解它。

于 2012-12-06T12:52:15.693 回答