Java中的接口多重继承

接口包含像类一样的变量和方法,但是默认情况下,与类不同,接口中的方法是抽象的。如果一个类实现多个接口,或者一个接口本身扩展了多个接口,则按接口进行多重继承。

给出了一个通过Java接口演示多重继承的程序,如下所示:

示例

interface AnimalEat {
   void eat();
}
interface AnimalTravel {
   void travel();
}
class Animal implements AnimalEat, AnimalTravel {
   public void eat() {
      System.out.println("Animal is eating");
   }
   public void travel() {
      System.out.println("Animal is travelling");
   }
}
public class Demo {
   public static void main(String args[]) {
      Animal a = new Animal();
      a.eat();
      a.travel();
   }
}

输出结果

Animal is eating
Animal is travelling

现在让我们了解上面的程序。

接口AnimalEat和AnimalTravel每个都有一个抽象方法,即eat()travel()。Animal类实现了AnimalEat和AnimalTravel接口。演示此代码段如下:

interface AnimalEat {
   void eat();
}
interface AnimalTravel {
   void travel();
}
class Animal implements AnimalEat, AnimalTravel {
   public void eat() {
      System.out.println("Animal is eating");
   }
   public void travel() {
      System.out.println("Animal is travelling");
   }
}

在Demo类的main()方法中,创建Animal类的对象a。然后调用方法eat()travel()。演示此代码段如下:

public class Demo {
   public static void main(String args[]) {
      Animal a = new Animal();
      a.eat();
      a.travel();
   }
}