真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Java中怎么實(shí)現(xiàn)接口繼承

本篇文章為大家展示了Java中怎么實(shí)現(xiàn)接口繼承,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

成都創(chuàng)新互聯(lián)始終堅(jiān)持【策劃先行,效果至上】的經(jīng)營(yíng)理念,通過多達(dá)十余年累計(jì)超上千家客戶的網(wǎng)站建設(shè)總結(jié)了一套系統(tǒng)有效的營(yíng)銷推廣解決方案,現(xiàn)已廣泛運(yùn)用于各行各業(yè)的客戶,其中包括:成都陽(yáng)光房等企業(yè),備受客戶表?yè)P(yáng)。

一 接口的繼承

1 點(diǎn)睛

接口支持多繼承,一個(gè)接口可以有多個(gè)父接口,子接口擴(kuò)展某個(gè)父接口,將會(huì)獲得父接口里定義的所有抽象方法、常量。

一個(gè)接口繼承多個(gè)父接口時(shí),多個(gè)父接口排在extends關(guān)鍵字之后。

2 代碼

interface interfaceA{  int PROP_A = 5;  void testA();}interface interfaceB{  int PROP_B = 6;  void testB();}interface interfaceC extends interfaceA, interfaceB{  int PROP_C = 7;  void testC();}public class InterfaceExtendsTest{  public static void main(String[] args)  {   System.out.println(interfaceC.PROP_A);   System.out.println(interfaceC.PROP_B);   System.out.println(interfaceC.PROP_C);  }}

3 運(yùn)行

567

4 說明

interfaceC接口繼承了 interfaceA和 interfaceB,所以 interfaceC中獲得了它們的常量,因此在main()方法中看到通過 interfaceC來訪問PROP_A、PROP_B、PROP_C常量。

二 使用接口

1 點(diǎn)睛

接口不能用于創(chuàng)建實(shí)例,但接口可以用于聲明引用類型變量。但這個(gè)引用類型的變量必須引用到其實(shí)現(xiàn)類的對(duì)象。接口的主要用途就是被實(shí)現(xiàn)類實(shí)現(xiàn)。接口主要有如下用途。

定義變量,也可用于進(jìn)行強(qiáng)制類型轉(zhuǎn)換。  調(diào)用接口中定義的常量。  被其他類實(shí)現(xiàn)。

一個(gè)類可以實(shí)現(xiàn)一個(gè)或多個(gè)接口,繼承使用extends關(guān)鍵字,實(shí)現(xiàn)則使用implements關(guān)鍵字。一個(gè)類可以實(shí)現(xiàn)多個(gè)接口,這是Java為單繼承靈活性不足所做的補(bǔ)充。

一個(gè)類實(shí)現(xiàn)一個(gè)或多個(gè)接口之后,這個(gè)類必須完全實(shí)現(xiàn)這些接口里所定義的全部抽象方法(也就是重寫這些抽象方法);否則,該類將保留從父接口那里繼承到的抽象方法,該類也必須定義成抽象類。

2 代碼

interface Output{  // 接口里定義的成員變量只能是常量  int MAX_CACHE_LINE = 50;  // 接口里定義的普通方法只能是public的抽象方法  void out();  void getData( String msg );  // 接口中定義默認(rèn)方法,需要使用default修飾  default void print( String... msgs )  {   for (String msg : msgs)   {     System.out.println(msg);   }  }  // 接口中定義默認(rèn)方法,需要使用default修飾  default void test()  {   System.out.println("默認(rèn)的test()方法");  }  // 接口中定義類方法、需要使用static修飾  static String staticTest()  {   return "Class method";  }}// 定義一個(gè)Product接口interface Product{  int getProduceTime();}// 讓Printer類實(shí)現(xiàn)Output和Product接口public class Printer implements Output , Product{  private String[] printData   = new String[MAX_CACHE_LINE];  // 用以記錄當(dāng)前需打印的作業(yè)數(shù)  private int dataNum = 0;  public void out()  {   // 只要還有作業(yè),繼續(xù)打印   while(dataNum > 0)   {     System.out.println("打印機(jī)打印:" + printData[0]);     // 把作業(yè)隊(duì)列整體前移一位,并將剩下的作業(yè)數(shù)減1     System.arraycopy(printData , 1      , printData, 0, --dataNum);   }  }  public void getData(String msg)  {   if (dataNum >= MAX_CACHE_LINE)   {     System.out.println("輸出隊(duì)列已滿,添加失敗");   }   else   {     // 把打印數(shù)據(jù)添加到隊(duì)列里,已保存數(shù)據(jù)的數(shù)量加1。     printData[dataNum++] = msg;   }  }  public int getProduceTime()  {   return 45;  }  public static void main(String[] args)  {   // 創(chuàng)建一個(gè)Printer對(duì)象,當(dāng)成Output使用   Output o = new Printer();   o.getData("輕量級(jí)Java EE企業(yè)應(yīng)用實(shí)戰(zhàn)");   o.getData("瘋狂Java講義");   o.out();   o.getData("瘋狂Android講義");   o.getData("瘋狂Ajax講義");   o.out();   // 調(diào)用Output接口中定義的默認(rèn)方法   o.print("孫悟空" , "豬八戒" , "白骨精");   o.test();   // 創(chuàng)建一個(gè)Printer對(duì)象,當(dāng)成Product使用   Product p = new Printer();   System.out.println(p.getProduceTime());   // 所有接口類型的引用變量都可直接賦給Object類型的變量   Object obj = p;  }}

3 運(yùn)行

打印機(jī)打印:輕量級(jí)Java EE企業(yè)應(yīng)用實(shí)戰(zhàn)打印機(jī)打?。函偪馢ava講義打印機(jī)打?。函偪馎ndroid講義打印機(jī)打?。函偪馎jax講義孫悟空豬八戒白骨精默認(rèn)的test()方法45

4 說明

Printer 實(shí)現(xiàn)了 Output 接口和 Product接口,因此Pinter對(duì)象即可以直接賦給Output變量,也可直接賦給Product變量。仿佛Printer類既是Output類的子類,也是Product類的子類,這就是Java提供的模擬多繼承。

Printer實(shí)現(xiàn)了Output接口,即可獲取Output接口中定義的print()方法和test()兩個(gè)默認(rèn)方法,因此Printer實(shí)例可以直接調(diào)用這兩個(gè)默認(rèn)方法。

接口不能顯示繼承任何類,但所有接口類型的引用變量都可以直接賦給Object類型的引用變量。

上述內(nèi)容就是Java中怎么實(shí)現(xiàn)接口繼承,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


當(dāng)前標(biāo)題:Java中怎么實(shí)現(xiàn)接口繼承
文章出自:http://weahome.cn/article/pejpgi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部