亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

SUN認(rèn)證

Java中接口的使用

時(shí)間:2024-08-20 07:08:33 SUN認(rèn)證 我要投稿
  • 相關(guān)推薦

Java中接口的使用

  接口申明必須有interface關(guān)鍵字和接口的名字,public指明任意類均可以使用這個(gè)接口,默認(rèn)情況下,只有與該接口定義在同一個(gè)包中的類才可以訪問這個(gè)接口。extends 與類申明中的extends 基本相同,不同的是一個(gè)接口可以有多個(gè)父接口,用逗號(hào)隔開。而一個(gè)類只能有一個(gè)父類。子接口繼承接口中所有的常量和方法。在類的申明中用implements來(lái)表示一個(gè)類實(shí)現(xiàn)某個(gè)接口,在類體中可以使用接口中定義的常量,而且必須實(shí)現(xiàn)接口中定義的所有方法(可以是空的實(shí)現(xiàn)但一定要實(shí)現(xiàn)),否則該類就是一個(gè)抽象類。一個(gè)類可以實(shí)現(xiàn)多個(gè)接口。接口的作用,一言以蔽之,就是標(biāo)志類的類別(type of class)。把不同類型的類歸于不同的接口,可以更好的管理他們。OO的精髓,是對(duì)對(duì)象的抽象,最能體現(xiàn)這一點(diǎn)的就是接口。

  接口不是類,尤其是絕對(duì)不能使用new 操作符實(shí)例化接口;

  Module md=new Module()//錯(cuò)誤

  不過,雖然不能構(gòu)造接口對(duì)象,但還是可以聲明接口變量。

  Module md;

  接口變量必須指向一個(gè)實(shí)現(xiàn)了該接口的類的對(duì)象;

  x=new MotorModule();//只要實(shí)現(xiàn)了Module就對(duì)了

  可以用instanceof來(lái)檢驗(yàn)對(duì)象是否實(shí)現(xiàn)了某個(gè)接口(只要它屬于的類或者父類實(shí)現(xiàn)了某個(gè)接口都可以);

  if(anObject instanceof Module){...}

  接口在軟件發(fā)布的時(shí)候是向用戶公開的,用戶可以通過調(diào)用實(shí)現(xiàn)接口的類的接口方法,而如果不實(shí)現(xiàn)接口用戶是不能調(diào)用的。

  也就是我們常可以聽到的服務(wù)提供商這樣說:"如果你們的類遵循一個(gè)特定的接口,那么我們將執(zhí)行這些服務(wù)

  java 接口的使用舉例

  //以下程序說明 并不嚴(yán)謹(jǐn),只是為了方便初學(xué)者初步的理解接口的應(yīng)用

  interface Interface //接口 {

  String ShowMessage(String MSG); //接口方法,因?yàn)榻涌诜椒J(rèn)是public abstract 所以這里可以不用顯示書寫

  }

  class ClassItf implements Interface //全部實(shí)現(xiàn)了接口interface類的方法;

  {

  public ClassItf()

  {

  //構(gòu)造函數(shù)

  }

  public String ShowMessage(String MSG) //實(shí)現(xiàn)接口方法ShowMessage()

  {

  System.out.print(MSG);

  return MSG;

  }

  }

  /* usingItf 類調(diào)用了接口方法,來(lái)實(shí)施某一些功能,但是具體的操作有接口實(shí)現(xiàn)類來(lái)操作,

  將必要的數(shù)據(jù)通信給接口,實(shí)現(xiàn)了數(shù)據(jù)的通信; 這里如此說明并不嚴(yán)謹(jǐn),只是便于初學(xué)者理解

  */

  class usingItf //"驅(qū)動(dòng)類"

  {

  public String getstring;

  public void usingItf(Interface inf,String MSG) //使用了接口定義的方法 注意:使用了Interface 的引用 inf

  {

  getstring=inf.ShowMessage(MSG);

  }

  }

  public class Test //Test函數(shù)

  {

  public static void main(String args[])

  {

  ClassItf newClassItf=new ClassItf();

  usingItf aa =new usingItf();

  aa.usingItf(newClassItf,"This is the firstpage!!!!"); // 注意這里傳遞的接口實(shí)現(xiàn)類的實(shí)例,還有參數(shù) class usingItf

  }

  }

【Java中接口的使用】相關(guān)文章:

區(qū)分Java中抽象類和接口的方法10-10

java中File類的使用方法09-07

Java的接口和抽象類09-13

java中continue跳轉(zhuǎn)語(yǔ)句使用方法10-04

音源接口使用方法技巧09-21

使用JavaScript實(shí)現(xiàn)Java的List功能08-09

在java中Synchronized的用法09-03

在Java中執(zhí)行JavaScript代碼07-03

Java中調(diào)用Oracle包的過程10-16

Java程序員使用大數(shù)據(jù)工具匯總07-07