日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
淺析Java語言中接口的特點(diǎn)和繼承

一、接口的繼承

創(chuàng)新互聯(lián)于2013年開始,先為海拉爾等服務(wù)建站,海拉爾等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為海拉爾企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

1.定義一個(gè)接口使用extends關(guān)鍵字來繼承另一個(gè)接口,這就是接口的繼承。

2.語法:

 
 
 
 
  1. [修飾符] interface 接口名 extends 父類接口1, 父類接口2, …{ 
  2.         定義常量0個(gè)或多個(gè); 
  3.         定義抽象方法0個(gè)或多個(gè); 

3.如何實(shí)現(xiàn)接口的繼承關(guān)系例子

 
 
 
 
  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類實(shí)現(xiàn)Printer接口 
  11. class Colorprinter implements Autoprinter{ 
  12.     //實(shí)現(xiàn)printRun()方法 
  13.     public void printRun(){ 
  14.         System.out.println("彩色打印機(jī)正在啟動(dòng)"); 
  15.   } 
  16.     //實(shí)現(xiàn)printData()方法 
  17.     public void printData(){ 
  18.         System.out.println("彩色打印機(jī)正在打印中"); 
  19.   } 
  20.     //實(shí)現(xiàn)autoPrint()方法 
  21.     public void autoPrint(){ 
  22.         System.out.println("彩色打印機(jī)自動(dòng)打印"); 
  23.   } 
  24.  
  25. public class p27 { 
  26.     public static void main(String[] args) { 
  27.         // TODO Auto-generated method stub 
  28.         Colorprinter c=new Colorprinter();//創(chuàng)建Colorprinter類的實(shí)例對象 
  29.         c.printRun();//調(diào)用Colorprinter類的printRun()方法 
  30.         c.printData();//調(diào)用Colorprinter類的printData()方法 
  31.         c.autoPrint();//調(diào)用Colorprinter類的autoPrint()方法 
  32.   } 

輸出的結(jié)果是:

  • 彩色打印機(jī)正在啟動(dòng)
  • 彩色打印機(jī)正在打印中
  • 彩色打印機(jī)自動(dòng)打印

從上面的代碼中,首先是定義了Printer接口,定義全局常量和兩個(gè)方法分別是printRun()和printData(),然后再定義一個(gè)Autopriner接口來繼承Printer接口,再Colorprinter類實(shí)現(xiàn)Printer接口,此時(shí),Autopriner接口有三個(gè)抽象方法,通過Colorprinter類實(shí)例化對象然后調(diào)用對應(yīng)的方法。

二、接口的特點(diǎn)

1.接口里的方法是抽象的,不可以去實(shí)例化對象。

2.如果實(shí)現(xiàn)某接口的類是抽象類,那么可以不實(shí)現(xiàn)該接口的所有方法。對于這個(gè)抽象類任何一個(gè)不是抽象類的子類來說,就需要實(shí)現(xiàn)所有抽象方法。

3.一個(gè)類使用implements關(guān)鍵字實(shí)現(xiàn)多個(gè)接口

例如:

 
 
 
 
  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. //定義一個(gè)類實(shí)現(xiàn)A,B接口 
  10. class C implements A,B{ 
  11.     int MAX=3;//定義全局常量 
  12.     //實(shí)現(xiàn)testB()方法 
  13.     @Override 
  14.     public void testB() { 
  15.         // TODO Auto-generated method stub 
  16.         System.out.println("我是B"); 
  17.     //實(shí)現(xiàn)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();//創(chuàng)建C類實(shí)例對象 
  27.         c.testA();//調(diào)用C類的testA()方法 
  28.         c.testB();//調(diào)用C類的testB()方法 
  29.   } 

運(yùn)行的結(jié)果是:

  • 我是A
  • 我是B

從上面代碼中,定義了A和B接口,在C類中使用implements關(guān)鍵字實(shí)現(xiàn)A和B的接口的方法,實(shí)例化對象并調(diào)用對應(yīng)的方法。

4.一個(gè)接口使用extends關(guān)鍵字實(shí)現(xiàn)繼承多個(gè)接口

例如:

 
 
 
 
  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.   } 

運(yùn)行的結(jié)果是:

 
 
 
 
  1. 1  

5.一個(gè)類在實(shí)現(xiàn)某接口的抽象方法,就需要使用一樣的方法頭。

6.如果實(shí)現(xiàn)某接口的類不是抽象類,那么類的定義部分需要實(shí)現(xiàn)指定接口的所有抽象方法。

三、總結(jié)

本文主要介紹了接口的繼承和接口的特點(diǎn)。

接口的繼承是定義一個(gè)接口使用extends關(guān)鍵字來繼承另一個(gè)接口,通過如何實(shí)現(xiàn)接口的繼承例子來幫助大家的理解這個(gè)用法。

一個(gè)類使用implements關(guān)鍵字實(shí)現(xiàn)多個(gè)接口,一個(gè)接口使用extends關(guān)鍵字實(shí)現(xiàn)繼承多個(gè)接口。

本文轉(zhuǎn)載自微信公眾號「Java進(jìn)階學(xué)習(xí)交流」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系Java進(jìn)階學(xué)習(xí)交流公眾號。


本文名稱:淺析Java語言中接口的特點(diǎn)和繼承
網(wǎng)頁網(wǎng)址:http://www.5511xx.com/article/dhphcos.html