重複の可能性:
2 つのクラスからの拡張
現在、Minecraft 用のシンプルな Mod を作成しようとしていますが、基本的には次のコードが必要です。
(自分の mod を他の多くの mod と互換性を持たせたいので、多くのクラスを編集したくありません。)
public class EntityModPlayer extends EntityPlayer, EntityCreature
{
super(par1World);
fishHook = new EntityFishHook(this /* has to be EntityPlayer */);
tasks.addTask(0, new EntityAISwimming(this /* has to be EntityCreature */));
}
ただし、複数のクラスを拡張することはできません...
新しい EntityFishHook*は、EntityModPlayer ではなく EntityPlayer をパラメーターとして必要としますが、新しい EntityAISwimmingメソッドは、EntityCreature のインスタンスをパラメーターとして使用することを望んでいます。したがって、EntityPlayer とEntityCreatureを「拡張」する必要があり、EntityPlayer を単にコピーして EntityModPlayer として貼り付けることはできません。
私はすでにインターフェースで遊んでいましたが、これは何か違うと思うので、「拡張」のようには使えません。
@ マインクラフトを知らない人、または私の英語が理解できない人はごめんなさい... (私はドイツ人です。)
EntityTasks のような多く/重要なクラスを変更する必要がないアイデアはありますか (同じクラスを編集している場合、他の mod と互換性がなくなるため)?
※メソッド new EntityFishHook (EntityPlayer) はマインクラフトには実在しません。よりよく説明するために、これを例として使用しました。私が説明しようとしたことを理解していただければ幸いです。簡単ではないことは確かです :/