浅析Java语言中接口的特点和继承

一、接口的继承

创新互联于2013年开始,先为海拉尔等服务建站,海拉尔等地企业,进行企业商务咨询服务。为海拉尔企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

1.定义一个接口使用extends关键字来继承另一个接口,这就是接口的继承。

2.语法:

 
 
 
 
  1. [修饰符] interface 接口名 extends 父类接口1, 父类接口2, …{ 
  2.         定义常量0个或多个; 
  3.         定义抽象方法0个或多个; 

3.如何实现接口的继承关系例子

 
 
 
 
  1. //定义Printer接口 
  2. interface Printer{ 
  3.     int max_line=20;//定义全局常量 
  4.     void printRun();//定义抽象方法pirntRun() 
  5.     void printData();//定义抽象方法printData() 
  6. //定义了Autopriner接口,然后继承Printer接口 
  7. interface Autoprinter extends Printer{//接口继承 
  8.     void autoPrint();//定义抽象方法autoPrint()方法 
  9.  
  10. //Colorprinter类实现Printer接口 
  11. class Colorprinter implements Autoprinter{ 
  12.     //实现printRun()方法 
  13.     public void printRun(){ 
  14.         System.out.println("彩色打印机正在启动"); 
  15.   } 
  16.     //实现printData()方法 
  17.     public void printData(){ 
  18.         System.out.println("彩色打印机正在打印中"); 
  19.   } 
  20.     //实现autoPrint()方法 
  21.     public void autoPrint(){ 
  22.         System.out.println("彩色打印机自动打印"); 
  23.   } 
  24.  
  25. public class p27 { 
  26.     public static void main(String[] args) { 
  27.         // TODO Auto-generated method stub 
  28.         Colorprinter c=new Colorprinter();//创建Colorprinter类的实例对象 
  29.         c.printRun();//调用Colorprinter类的printRun()方法 
  30.         c.printData();//调用Colorprinter类的printData()方法 
  31.         c.autoPrint();//调用Colorprinter类的autoPrint()方法 
  32.   } 

输出的结果是:

  • 彩色打印机正在启动
  • 彩色打印机正在打印中
  • 彩色打印机自动打印

从上面的代码中,首先是定义了Printer接口,定义全局常量和两个方法分别是printRun()和printData(),然后再定义一个Autopriner接口来继承Printer接口,再Colorprinter类实现Printer接口,此时,Autopriner接口有三个抽象方法,通过Colorprinter类实例化对象然后调用对应的方法。

二、接口的特点

1.接口里的方法是抽象的,不可以去实例化对象。

2.如果实现某接口的类是抽象类,那么可以不实现该接口的所有方法。对于这个抽象类任何一个不是抽象类的子类来说,就需要实现所有抽象方法。

3.一个类使用implements关键字实现多个接口

例如:

 
 
 
 
  1. //定义A接口 
  2. interface A{ 
  3.     int MAX=1;//定义全局常量 
  4.     void testA();//定义抽象方法testA() 
  5. //定义B接口 
  6. interface B{ 
  7.     int MAX=2;//定义全局常量 
  8.     void testB();//定义抽象方法testB() 
  9. //定义一个类实现A,B接口 
  10. class C implements A,B{ 
  11.     int MAX=3;//定义全局常量 
  12.     //实现testB()方法 
  13.     @Override 
  14.     public void testB() { 
  15.         // TODO Auto-generated method stub 
  16.         System.out.println("我是B"); 
  17.     //实现testA()方法 
  18.     @Override 
  19.     public void testA() { 
  20.         // TODO Auto-generated method stub 
  21.         System.out.println("我是A"); 
  22.   } 
  23. public class p28 { 
  24.     public static void main(String[] args) { 
  25.         // TODO Auto-generated method stub 
  26.         C c=new C();//创建C类实例对象 
  27.         c.testA();//调用C类的testA()方法 
  28.         c.testB();//调用C类的testB()方法 
  29.   } 

运行的结果是:

  • 我是A
  • 我是B

从上面代码中,定义了A和B接口,在C类中使用implements关键字实现A和B的接口的方法,实例化对象并调用对应的方法。

4.一个接口使用extends关键字实现继承多个接口

例如:

 
 
 
 
  1. //定义A接口 
  2. interface A{ 
  3.     int MAX=1;//定义全局常量 
  4.     void testA();//定义抽象方法testA() 
  5. //定义B接口 
  6. interface B{ 
  7.     int MAX=2;//定义全局常量 
  8.     void testB();//定义抽象方法testB() 
  9. //定义接口继承A,B接口 
  10. interface C extends A,B{ 
  11.     int MAX=3;//定义全局常量 
  12.     void testC();//定义testC()方法 
  13. public class p29 { 
  14.     public static void main(String[] args) { 
  15.         // TODO Auto-generated method stub 
  16.         System.out.println(A.MAX); 
  17.         System.out.println(B.MAX); 
  18.         System.out.println(C.MAX); 
  19.   } 

运行的结果是:

 
 
 
 
  1. 1  

5.一个类在实现某接口的抽象方法,就需要使用一样的方法头。

6.如果实现某接口的类不是抽象类,那么类的定义部分需要实现指定接口的所有抽象方法。

三、总结

本文主要介绍了接口的继承和接口的特点。

接口的继承是定义一个接口使用extends关键字来继承另一个接口,通过如何实现接口的继承例子来帮助大家的理解这个用法。

一个类使用implements关键字实现多个接口,一个接口使用extends关键字实现继承多个接口。

本文转载自微信公众号「Java进阶学习交流」,可以通过以下二维码关注。转载本文请联系Java进阶学习交流公众号。

当前名称:浅析Java语言中接口的特点和继承
链接URL:http://www.shufengxianlan.com/qtweb/news2/802.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联