Я создал проект с lejos 0.9. Теперь я знаю, что я могу загружать и компилировать классы (из java в nxj файлы) только с помощью плагина eclips, когда класс имеет public static void main(String[] args)
. Но я должен получить больше классов и интерфейсов на кирпиче Lego Mindstorm. Есть ли способ сделать это ? Прямое подключение к кирпичу не является хорошей идеей, потому что тогда на кирпич будут помещены java-файлы, которые не могут быть запущены.
Другим вариантом решения этой проблемы может быть изменение дизайна uml. Это текущий дизайн
![enter image description here](https://i.stack.imgur.com/6fBsw.png)
Таким образом, в основном есть класс роботов, и другие роботы, такие как гуманоид и т.д., расширяют этот класс роботов. Тогда есть поведения. Которые все реализуют интерфейс Iwalk. Каждый робот может получить поведение динамически из-за полиморфизма.
В humanoid.java:
package Robots;
Поведение при импорте. ;
импорт IBehaviours. ;
публичный класс Humanoid расширяет Robot {
частный ходок Iwalk = новый ForwardLegs ();
Iwalk getWalker() {
return walker;
}
public void setWalker(Iwalk walker) {
this.walker = walker;
}
public void moving() {
setWalker(walker);
walker.move();
}
}
В классе helloworld.java (не связан ни с одним классом, только для инициации)
Humanoid asimov = new Humanoid();
asimov.setWalker(new ForwardLegs());
asimov.moving();
Так что ответы на мой вопрос существуют: как поставить интерфейсы на кирпич legomindstorm с lejos. Или другой дизайн UML, который делает то же самое, но без интерфейсов. Ты заранее.