亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java  interface 接口的使用好處分析

發布時間:2020-09-28 21:31:34 來源:腳本之家 閱讀:201 作者:傾聽歲月 欄目:編程語言

本文實例講述了java  interface 接口的使用優點。分享給大家供大家參考,具體如下:

接口interface 的作用是什么?

假設在以前我們開發了某個業務的實現類Demo1,現在根據需求我們需要重新設計該業務的實現類Demo2且不能影響其它業務的運行。

這時候就需要一個標準,一個針對該業務實現的一個標準接口(standard interface)。而所有實現該接口(interface)的類都需要去實現該接口的方法。通過java向上轉型實現針對不同的業務有不同類的實現。

注釋:

1、interface 只有方法名和返回值,沒有方法體,都是抽象方法。切不能直接實例化(通過他的實現類向上轉型獲得該接口的實現)。

Test.java

package Test;
public interface Test
{
  //定義了一個接口方法
  public String getTestText();
}

Test1.java

package Test;
public class Test1 implements Test
{
  @Override
  public String getTestText()
  {
    return "this class name is test1"; 
  }
}

Test2.java

package Test;
public class Test2 implements Test
{
  @Override
  public String getTestText()
  {
    return "this class name test2";
  }
}

Index.java

import Test.Test;
public class Index
{
  public static void main(String[] args)
    throws Exception
  {
    Test test1 = testIndex("Test.Test1");
    System.out.println(test1.getTestText());
    Test test2 = testIndex("Test.Test2");
    System.out.println(test2.getTestText());
  }
  public static Test testIndex(String classPath)
  {
    Test test = (Test)Class.forName(classPath).newInstance();
    return test;
  }
}

至此,你看出這樣用的好處了嗎?Test1和Test2都實現了接口Test 如果以后要更改Test的實現或者是針對不同業務有不同的Test實現,我們都可以動態的載入針對Test不同的實現類。

接口與接口之間是可以繼承的

Demo1.java

package Demo;
public interface Demo1
{
  public String getName();
}

Demo2.java

package Demo;
public interface Demo2 extends Demo1
{
  public String getAge();
}

Demo3.java 繼承Demo2 需要實現Demo1和Demo2中的接口方法

package Demo;
public class Demo3
{
  @Override
  public String getName()
  {
    return "my name is Mr.tan";
  }
  @Override
  public String getAge()
  {
    return "my age is 22";
  }
}

其實本質就是一個類的多鐘表現形態(多態)。針對不同的業務,相同的接口或者是類通過不同的實現類向上轉型表現出不同的形態。

更多java相關內容感興趣的讀者可查看本站專題:《Java面向對象程序設計入門與進階教程》、《Java數據結構與算法教程》、《Java操作DOM節點技巧總結》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》

希望本文所述對大家java程序設計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

如东县| 高青县| 五华县| 湾仔区| 丹东市| 宜兴市| 唐山市| 布尔津县| 广南县| 永吉县| 邛崃市| 江山市| 天全县| 安达市| 洛宁县| 兴仁县| 新疆| 平遥县| 方城县| 突泉县| 利辛县| 梁平县| 嵩明县| 三穗县| 孝昌县| 冷水江市| 博白县| 钟祥市| 莱西市| 土默特右旗| 尉氏县| 和顺县| 高淳县| 珲春市| 淄博市| 巴彦县| 双流县| 乾安县| 忻城县| 漳平市| 合江县|