如何从不同的java类创建具有属性的对象

如何从不同的java类创建具有属性的对象,java,architecture,Java,Architecture,我有一个职业生物与另一个职业飞行和不死生物扩展。我如何创建一个同时具有飞行和不死属性的对象 class Creature(){ String name; public Creature(String name){ this.name=name; } class Flying extends Creature{ ... } class Undead extends Creature{ ... } Object creature = new Object();//Both

我有一个职业生物与另一个职业飞行和不死生物扩展。我如何创建一个同时具有飞行和不死属性的对象

class Creature(){
String name;
public Creature(String name){
    this.name=name;
}
class Flying extends Creature{
    ...
}
class Undead extends Creature{
    ...
}

Object creature = new Object();//Both Flying and Undead

还有其他方法吗?或者我应该使用不同的方法吗?

在Java中,不能有一个从多个超类继承的类。您最好使用接口,因为您可以使用更多实现的接口。 接口是类似于类的对象。在接口中,可以有变量和方法,但定义方法和变量并给它们赋值应该在实现接口的类中完成。 例如:

     Interface MyInterface 
          {
             int myVar;
             void myMethod (int var);
          }

    class MyClass implements MyInterface // with comma(,) you can separate multiple interfaces
 {
    void myMethod (int var) {//do something}
    int myVar = 1;
    }
使用名为“飞行”、“不死生物”或“生物”的界面,您可能可以随心所欲


你可以学习更多关于界面的知识。

这是家庭作业问题吗?不,我想在游戏中实现一个“生物”系统。我们可以创建“人类”、“僵尸”、“飞行”生物,比如MTG卡类型行(一张卡可以有多种类型)。因此,一个生物可以是“飞行的”和“人类的”(像天使一样)。问题是如何创造出这样一种生物,它可以分享人类和飞行生物的属性。听起来像是一种挑战。