2014-12-10 2 views
0

Я пытаюсь закодировать робота в java, и у меня возникает проблема вызова методов из разных классов. Я могу позвонить DriveSystem из другого класса, и я могу позвонить preset методам из DriveSystem, но всякий раз, когда я пытаюсь вызвать методы, которые я написал, NetBeans подчеркивает метод. Я пробовал делать это с помощью разных классов и методов, и это дает мне ту же ошибку, которая говорит "cannot find symbol method doNothing()".Ошибка при вызове метода из другого класса

public class DriveDoNothing extends CommandBase { 

    public DriveDoNothing() { 
     requires(DriveSystem); 
    } 


    protected void execute() { 
     DriveSystem.doNothing(); 

    } 
} 

код Система привода: DriveSystem является

public class DriveSystem extends Subsystem { 
    public void doNothing() {   
    leftMotor.set(0.0);   
    rightMotor.set(0.0); 
} 
+4

Где код для класса DriveSystem? Компилятор говорит вам, что в этом классе нет 'static' метода с именем' doNothing'. Может быть, вы написали метод экземпляра с этим именем? Вы не можете вызвать метод экземпляра, если у вас нет экземпляра. –

ответ

0

Вам нужно создать экземпляр DriveSystem. Так как doNothing() является методом экземпляра DriveSystem.

new DriveSystem().doNothing(); 

вместо

DriveSystem.doNothing(); 

Или либо вы должны изменить метод doNothing() статического типа.

Смежные вопросы