Java接口

接口的概念

有时必须从几个类中派生出一个子类,继承它们所有的属性和方法。但是,Java不支持多重继承。有了接口,就可以得到多重继承的效果。

接口(interface)是抽象方法和常量值定义的集合。

从本质上讲,接口是一种特殊的抽象类, 这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现。例如:

public interface Runner{
   int id =1;
   public void start();
   public void run();
   public void stop();
}

案例:蝙蝠会飞,还会用牙齿咬。

首先定义一个飞行的接口:

package cn.com.Classwork;
public interface Flyable{
   public final int wingsNumber = 2;
   public abstract void fly();
}

接着定义一个咬的接口:

package cn.com.Classwork;
public interface Bitable{
   public int teethNumber = 0;
   public abstract void bite();
}

最后定义蝙蝠类去实现这两个接口:

package cn.com.ClassWork;
public class Bat implements Flyable,Bitable{
   @Override
   public void bite(){
       System.out.println("吸血");
  }
   
   @Override
   public void fly(){
       System.out.println("用翅膀飞");
  }
   
   public static void main(String[] args){
        System.out.println("Flyable.wingsNumber");
  }
}

接口的特点

  1. 用interface来定义。

  2. 接口中的所有成员变量都默认是由public static final修饰的。

  3. 接口中的所有方法都默认是由public abstract修饰的。

  4. 接口没有构造方法。构造方法用于创建对象。

  5. 实现接口的类中必须提供接口中所有方法的具体实现内容。

  6. 多个无关的类可以实现同一个接口。

  7. 一个类可以实现多个无管道接口。

  8. 与继承关系类似,接口与实现类之间存在多态性。

  9. 接口也可以继承另一个接口,使用extends关键字。

posted on 2021-07-21 14:29  tutucoming  阅读(43)  评论(0编辑  收藏  举报