次の基底クラス Queen と Knight がその派生クラスであるとします。WeaponBehaviour はインターフェースです。具体的な GameCharacter の種類によっては、Guice を使用して武器を注入する方法がわかりません。
public abstract class GameCharacter {
@Inject
protected WeaponBehaviour weapon;
public GameCharacter() {
}
public void fight() {
weapon.useWeapon();
}
public void setWeapon(WeaponBehaviour weapon) {
this.weapon = weapon;
}
}