91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

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

浦东新区| 丹东市| 山东省| 德阳市| 响水县| 浦北县| 无棣县| 乌苏市| 平顶山市| 曲水县| 林周县| 富顺县| 泰安市| 广昌县| 抚松县| 遂昌县| 泌阳县| 石泉县| 鄱阳县| 简阳市| 丹东市| 修文县| 耿马| 乌什县| 绍兴县| 姜堰市| 德保县| 门源| 武威市| 潞城市| 武夷山市| 溧阳市| 新津县| 资溪县| 威远县| 长寿区| 凤翔县| 宁津县| 韶山市| 通江县| 普陀区|