面向对象的接口

 

  在C++中,一个类被允许继承多个类。但是在Java以后的语言不被允许。

 

  这样,如果想继承多个类时便非常困难。所以开发方想出了新办法:接口。

 

  一个接口内,允许包含变量、常量等一个类所包含的基本内容。但是,接口中的函数不允许设定代码,也就意味着不能把程序入口放到接口里。由上可以理解到,接口是专门被继承的。接口存在的意义也是被继承。和C++里的抽象类里的纯虚函数是相同的。不能被实例化。

 

  定义接口的关键字是interface,例如:

 

  public interface MyInterface{

 

  public void add(int x,int y);

 

  public void volume(int x,int y,int z);

 

  }

 

  继承接口的关键字是implements,相当于继承类的extends。

 

  需要注意的是,当继承一个接口时,接口里的所有函数必须全部被覆盖。例如:

 

  class Demo implements MyInterface{

 

  public void add(int x,int y){

 

  System.out.println(" "+(x+y));

 

  }

 

  public void volume(int x,int y,int z){

 

  System.out.println(" "+(x*y*z));

 

  }

 

  public static void main(String args[]){

 

  Demo d=new Demo();

 

  d.add(10,20);

 

  d.volume(10,10,10);

 

  }

 

  }

 

  输出结果:

 

  30

 

  1000

 

  当想继承多个类时,开发程序不允许,报错。这样就要用到接口。因为接口允许多重继承(,),而类不允许。所以就要用到接口。

原文地址:https://www.cnblogs.com/lhy_2011/p/2080902.html