基本数据存储,用于相对少量的信息,使用一组方法

时间:2012-07-26 15:25:52

标签: android class

例如,我有一个名为animals的类。我认为我不需要将其分类为鸟类,哺乳动物等,因为我只想要一个包含所有动物的方法和ui的类,例如显示动物出生,显示动物生长,显示动物被屠宰,显示动物被吃掉(旁边:是的,这只是一个例子,但你得到的图片)。但是,我只想加载所有的鸟类并动作然后返回主菜单,然后导航到哺乳动物并展示它们,依此类推。在我的真实应用程序中,每个“动物”只有3x int信息。没有视频,但它会有连续的音频和动画。

由于我每次只使用1/6的动物数据,即10-15只动物,整个应用程序可能有60-100只动物,我最好做什么?

2 个答案:

答案 0 :(得分:0)

评论变成了答案

我会创建一个名为Animal的接口,其中包含所有功能。

public interface Animal {
   public void drawEating();
   public void drawDeath();
}

然后创建实现此接口的类:

public class Bird implements Animal {
   public void drawEating() {
       // TODO: fill in
   }
   public void drawDeath() {
      // TODO: fill in
   }
}

要将您想要绘制的Animal传递给新的活动,您可以将其传递到类似here所述的包中,或者在名为registerAnimal的新活动中创建一个功能并调用从你的第一次活动开始。

public class AnimalActivity extends Activity {
   Animal animal = null;


 protected void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
 }

 public void registerAnimal(Animal a) {
      animal = a;
 }

 public void someDrawFunction() {
      if (animal != null)
          animal.drawEating();
  }

}

使用此方案,您只有一项所有动物的活动,从而节省了大量的重复代码。

答案 1 :(得分:0)

如果您想使用动物类的一些基本字段,即名称,颜色等,您应该创建一个抽象类动物而不是界面。