Java ではインターフェイスでインスタンス フィールドを使用できないことを知りましたが、この機能が本当に必要です。
私は最初のゲームを作成することを学んでいます。Hero
私のゲームには、 (プレイヤーが制御する)Boss
、、、などのさまざまな種類のアクターがありCanon
ます...
種類に関係なく、すべてのアクターがModel
などのサブクラスにいくつかのフィールドを与える基本クラスから継承し、 のすべてのサブクラスがMVC パターンのようにposition
およびwidth
に関連付けられるようにしたいと考えています。height
Model
Controller
Renderer
public class Model {
//position
public float x;
public float y;
public float width;
public float height;
}
ちなみに、Hero
andは死ぬことのできる実体だと思っていたので、例えばフィールドとして持つように強制されたBoss
インスタンスにしたいのですが、 a は不死の実体になるのでaではありません。したがって、私は試しました:Life
public float hitPoint;
Cannon
Life
public interface Life {
public float hitPoint;
}
のインスタンスが期待されます
public class Hero extends Model implements Life {...}
を本質的に持っていhitPoint
ます。しかしその後、Interface のインスタンス フィールドは Java では許可されておらず、多重継承もサポートしていないことを知りました。
上記の設計を Java で実現することは可能ですか。