Для моего семестрового проекта моя команда и я должны создать файл .jar (библиотека, не запускаемая), которая содержит среду разработки игры и демонстрирует концепции ООП. Предполагается, что это FRAMEWORK, а другая команда должна использовать нашу платформу и наоборот. Поэтому я хочу знать, как мы должны начать. Мы подумали о нескольких подходах:
1. Начните с простого класса
public class Enemy {
public Enemy(int x, int y, int health, int attack, ...) {
...
}
...
}
public class UserDefinedClass extends Enemy {
...
}
2. Начните с абстрактного класса, который пользовательские враги должны наследовать абстрактные члены
public abstract class Enemy {
public Enemy(int x, int y, int health, int attack, ...) {
...
}
public abstract void draw();
public abstract void destroy();
...
}
public class UserDefinedClass extends Enemy {
...
public void draw() {
...
}
public void destroy() {
...
}
}
3. Создайте супер-ABC (абстрактный базовый класс), который ВСЕ наследуется от
public abstract class VectorEntity {
...
}
public abstract class Enemy extends VectorEntity {
...
}
public class Player extends VectorEntity {
...
}
public class UserDefinedClass extends Enemy {
...
}
Что я должен использовать? Или есть лучший способ?