Я хочу иметь одну и ту же статическую переменную с другим значением в зависимости от типа класса.
Так что я бы
public class Entity
{
public static Bitmap sprite;
public void draw(Canvas canvas, int x, int y)
{
canvas.drawBitmap(sprite, x, y, null);
}
}
public class Marine extends Entity
{
}
public class Genestealer extends Entity
{
}
А потом в моей основной программе зайти:
Marine.sprite = // Load sprite for all instances of Marine
Genestealer.sprite = // Load sprite for all instances of Genestealer
Я не хочу хранить один и тот же спрайт в каждом экземпляре класса. Я хочу один для каждого типа класса. Я хочу наследовать статическую переменную спрайта и функцию рисования, которая будет рисовать спрайт. Но я не хочу, чтобы спрайт Genstealer переопределил морской спрайт.
Возможно ли это?
Как бы я это сделал?