java接口

java 中 接口是啥意思?接口可以說是為了提供一種規范 , 方便其他地方使用此規范的一種技術 。
在現實生活中可以接口的例子很多,比如USB接口 。它定義了USB口的大小,4跟USB線每根線的顏色、作用等 。在軟件方面定義了供CPU調用的一些方法 。比如識別、啟動、彈出、傳送數據等等 。采用USB接口的設備很多 , 有鼠標、鍵盤、u盤等等 。每種設備實現識別、啟動、彈出、傳送數據的方式不一樣 。


在java中,接口定義了一些方法 , 但是不用去實現,而由實現了此接口的類去實現接口中定義的方法,比如有一個接口叫做USB,有一個類叫做鼠標,USB接口定義了啟動、傳送數據等方法 。那么鼠標實現了USB接口,就得實現啟動、傳送數據方法 。另外一個類叫做U盤也實現了USB接口、那么它也要實現啟動、傳送數據 。在鼠標或者U盤連接上電腦后,CPU發現有USB設備連接上電腦了(cpu并不知道是什么設備,只知道是USB設備) , 這個時候CPU會發出啟動命令來啟動USB設備,而啟動鼠標和啟動U盤具體流程是不一樣的,這些啟動流程都是有鼠標和U盤各自來實現的 。

希望對你的理解有幫助

java接口作用是什么?

java接口

文章插圖

接口是一種規范軟件開發大多是一個協作性的工作:電器和插座分別是不同人完成的,有了接口大家就能分頭開干,都按照接口來辦事,各自做完就能輕松地整合到一起 。各部分的測試也更加方便 。接口在開發過程中可以快速分離工作內容 。比如調用者在寫業務邏輯的時候需要一個功能,可能是數據庫訪問,或者復雜計算,但是他的工作專注于實現業務邏輯,不想分開精力去做底層實現,那么他只需要先實現一個接口,定義了規范,然后就可以繼續他的業務邏輯代碼了 。而實現者可以根據這個接口規范,做具體的實現 。這樣通過使用接口就可以快速的分離工作內容,達到團隊并行工作的目的 。擴展資料:功能在Java語言規范中,一個方法的特征僅包括方法的名字,參數的數目和種類,而不包括方法的返回類型,參數的名字以及所拋出來的異常 。在Java編譯器檢查方法的重載時,會根據這些條件判斷兩個方法是否是重載方法 。但在Java編譯器檢查方法的置換時,則會進一步檢查兩個方法(分處超類型和子類型)的返還類型和拋出的異常是否相同 。接口實現和類繼承的規則不同,為了數據的安全,繼承時一個類只有一個直接父類,也就是單繼承,但是一個類可以實現多個接口,接口彌補了類的不能多繼承缺點,繼承和接口的雙重設計既保持了類的數據安全也變相實現了多繼承 。Java接口本身沒有任何實現,因為Java接口不涉及表象 , 而只描述public行為,所以Java接口比Java抽象類更抽象化 。但是接口不是類,不能使用new 運算符實例化一個接口 。參考資料:百度百科-Java接口
java中的接口到底是什么?1.接口用于描述一組類的公共方法/公共屬性. 它不實現任何的方法或屬性,只是告訴繼承它的類
《至少》要實現哪些功能, 繼承它的類可以增加自己的方法.

2.使用接口可以使繼承它的類: 命名統一/規范,易于維護.比如:兩個類 "狗"和"貓",如果它
們都繼承了接口"動物",其中動物里面有個方法Behavior(),那么狗和貓必須得實現Behavior()方法,
并且都命名為Behavior這樣就不會出現命名太雜亂的現象.如果命名不是Behavior(),接口會約束
即不按接口約束命名編譯不會通過.

3.提供永遠的接口 。當類增加時,現有接口方法能夠滿足繼承類中的大多數方法,沒必要
重新給新類設計一組方法 , 也節省了代碼,提高了開發效率.
==================================
歸納總結

I.一般在僅實現單繼承用途時, 盡量用基類; 反之使用接口.

II. 如果基類不作為業務對象(在應用時不需要聲明其實例), 則盡量聲明為抽象類;否則聲明為一般基類.

III. 各個子類如果 公共(重用)代碼較多, 建議使用類繼承方式, 把公共代碼抽象到基類中.

java中接口的定義是什么?1、定義接口
使用interface來定義一個接口 。接口定義同類的定義類似,也是分為接口的聲明和接口體,其中接口體由常量定義和方法定義兩部分組成 。定義接口的基本格式如下:

[修飾符] interface 接口名 [extends 父接口名列表]{
[public] [static] [final] 常量;
[public] [abstract] 方法;
}
修飾符:可?。?用于指定接口的訪問權限,可選值為public 。如果省略則使用默認的訪問權限 。
接口名:必選參數,用于指定接口的名稱,接口名必須是合法的Java標識符 。一般情況下 , 要求首字母大寫 。
extends 父接口名列表:可選參數,用于指定要定義的接口繼承于哪個父接口 。當使用extends關鍵字時,父接口名為必選參數 。
方法:接口中的方法只有定義而沒有被實現 。

java中的接口指什么?接口是實現構件可插入性的關鍵,可插入構件的關鍵在于存在一個公用的接口,以及每個構件實現了這個接口 。

什么是接口?

Java中的接口是一系列方法的聲明,是一些方法特征的集合,一個接口只有方法的特征沒有方法的實現,因此這些方法可以在不同的地方被不同的類實現,而這些實現可以具有不同的行為(功能) 。

接口的兩種含義:一,Java接口,Java語言中存在的結構,有特定的語法和結構;二,一個類所具有的方法的特征集合,是一種邏輯上的抽象 。前者叫做“Java接口”,后者叫做“接口” 。

在Java語言規范中,一個方法的特征僅包括方法的名字 , 參數的數目和種類,而不包括方法的返回類型,參數的名字以及所拋出來的異常 。在Java編譯器檢查方法的重載時,會根據這些條件判斷兩個方法是否是重載方法 。但在Java編譯器檢查方法的置換時 , 則會進一步檢查兩個方法(分處超類型和子類型)的返還類型和拋出的異常是否相同 。

接口繼承和實現繼承的規則不同,一個類只有一個直接父類 , 但可以實現多個接口 。

Java接口本身沒有任何實現,因為Java接口不涉及表象,而只描述public行為,所以Java接口比Java抽象類更抽象化 。

Java接口的方法只能是抽象的和公開的 , Java接口不能有構造器 , Java接口可以有public,靜態的和final屬性 。

接口把方法的特征和方法的實現分割開來 。這種分割體現在接口常常代表一個角色,它包裝與該角色相關的操作和屬性,而實現這個接口的類便是扮演這個角色的演員 。一個角色由不同的演員來演,而不同的演員之間除了扮演一個共同的角色之外 , 并不要求其它的共同之處 。

為什么使用接口?

兩個類中的兩個類似的功能,調用他們的類動態的決定一種實現,那他們提供一個抽象父類 , 子類分別實現父類所定義的方法 。

問題的出現:Java是一種單繼承的語言 , 一般情況下,哪個具體類可能已經有了一個超類 , 解決是給它的父類加父類,或者給它父類的父類加父類 , 只到移動到類等級結構的最頂端 。這樣一來,對一個具體類的可插入性的設計,就變成了對整個等級結構中所有類的修改 。

接口是可插入性的保證 。

在一個等級結構中的任何一個類都可以實現一個接口,這個接口會影響到此類的所有子類,但不會影響到此類的任何超類 。此類將不得不實現這個接口所規定的方法,而其子類可以從此類自動繼承這些方法 , 當然也可以選擇置換掉所有的這些方法 , 或者其中的某一些方法,這時候,這些子類具有了可插入性(并且可以用這個接口類型裝載,傳遞實現了他的所有子類) 。

我們關心的不是那一個具體的類,而是這個類是否實現了我們需要的接口 。

接口提供了關聯以及方法調用上的可插入性,軟件系統的規模越大,生命周期越長,接口使得軟件系統的靈活性和可擴展性,可插入性方面得到保證 。

類型

使用Java接口將軟件單位與內部和外部耦合起來 。使用Java接口不是具體的類進行變量的類型聲明 , 方法的返還類型聲明 , 參量的類型聲明,以及數據類型的轉換 。

在理想的情況下 , 一個具體的Java類應當只實現Java接口和抽象Java類中聲明的方法 , 而不應當給多余方法 。

類型等級結構

Java接口(以及抽象類)一般用來作為一個類型的等級結構的起點 。

如果一個類已經有了一個主要的超類型,那么通過實現一個接口 , 這個類可以擁有另一個次要的超類型 , 這種次要的超類型叫做混合類型 。

Java接口常用方法

單方法接口

public interface Actionlistener(){

public abstract void actionPerformed(ActionEvent event);

}

僅且只有一個方法,只有實現了這個接口(重寫這個接口中的唯一一個方法),你才有資格去事件監聽器列表里注冊(參數為Actionlistener類型),當事件源變動時,自動調用這個唯一的actionPerformed方法.

標識接口

是沒有任何方法和屬性的接口 。標識接口不對實現它的類有任何語意上的要求,它僅僅表明了實現它的類屬于一個特定的類型(傳遞) 。

不推薦過多的使用標識接口 。

常量接口

用Java接口來聲明一些常量,然后由實現這個接口的類使用這些常量(以前在做畫板的時候這么干過) 。建議不要模仿這種常量接口的做法 。

java中什么是接口?接口的作用是什么?
java接口

文章插圖

java接口:1、Java語言中存在的結構 , 有特定的語法和結構 。2、Java語言中一個類所具有的方法的特征集合,是一種邏輯上的抽象 。java接口作用:1、利于代碼的規范這樣做的目的一方面是為了給開發人員一個清晰的指示,告訴他們哪些業務需要實現;同時也能防止由于開發人員隨意命名而導致的命名不清晰和代碼混亂,影響開發效率 。2、有利于對代碼進行維護可以一開始定義一個接口,把功能菜單放在接口里,然后定義類時實現這個接口,以后要換的話只不過是引用另一個類而已,這樣就達到維護、拓展的方便性 。3、保證代碼的安全和嚴密一個好的程序一定符合高內聚低耦合的特征,能夠讓系統的功能較好地實現,而不涉及任何具體的實現細節 。這樣就比較安全、嚴密一些,這一思想一般在軟件開發中較為常見 。擴展資料:關于java接口的使用規范:1、接口中可以定義常量,不能定義變量,接口中的屬性都是全局靜態常量,接口中的常量必須在定義時指定初始值 。2、 接口中所有的方法都是抽象方法,接口中方法都會自動用public abstract 修飾,即接口中只有全局抽象方法 。3、 接口不能實例化,接口中不能有構造 。4、 接口之間可以通過extends實現繼承關系,一個接口可以繼承多個接口,但接口不能繼承類 。5、 接口的實現類必須實現接口的全部方法,否則必須定義為抽象類 。參考資料來源:百度百科:java接口
JAVA:什么是接口,它的主要作用是什么?java作為一門編程語言 , 肯定是用來編寫軟件的 。它是從c++演變而來的,是一門很優秀的編程語言,由于其虛擬機的應用,使得他可以一次編譯處處使用,所以很是流行 。

另外java又根據實際應用大體分為三個版本j2me面向嵌入式開發比如手機程序,j2se標準版中小型軟件應該是多用于c/s結構 , 也是學習java的最好開始;j2ee面向大型企業系統,綜合了很多技術 。
Java將原程序編譯成字節碼(bytecode),并通過Java虛擬機(JVM)解釋字節碼的方式來執行 。因為這種運行方式,只要針對不同的計算機平臺準備相應的Java虛擬機 , 就可以很方便的實現Java語言的跨平臺性 。因此,Java非常適合于企業網絡和Internet環境,現在已成為Internet中最受歡迎、最有影響的編程語言之一 。Java有許多值得稱道的優點,如簡單、面向對象、分布式、解釋性、可靠、安全、結構中立性、可移植性、高性能、多線程、動態性等 。

Java的主要應用有如下幾點:

*利用瀏覽器中的Java虛擬機運行于客戶端的Applet 。
*利用本地虛擬機運行的Java應用程序,通常利用Swing或SWT等來編寫跨平臺的GUI界面系統 。
*通過編寫Servlet/JSP來提供網絡服務 , 運行于網絡應用程序服務器中 。
*利用嵌入式Java虛擬機運行于手機等移動設備的Java應用程序,使用J2ME API 。
編寫基于互聯網的應用程序,編寫移動應用程序。
手機的 Java 程序就用它編寫 。
Android 就是以 Java 為基礎,寫 Android 應用程序也要有 Java 基礎。

java接口的作用是什么??引用了我在另一個問題中的回答:
http://zhidao.baidu.com/question/148048469.html
接口實際上相當于一個父類 , 實現了一個接口就證明這個類肯定會有某些行為 。這樣我只要知道這個類實現了某個接口,卻不用關心這個類如何實現,也不用關心這個類還實現了其他什么功能 。
例如:
接口A 包含方法public void print1(){};和public void print(){};
接口B 包含方法public void print2(){};和public void print(){};

我有個類C實現了A和B

那么 我用 A去聲明C的時候
A a = new C();
我們不必關心C能做什么,卻能保證可以調用
a.print();
a.print1();

同理
B b = new C();
b.print();
b.print2();


這往往在模塊化開發中,例如3個人每人負責一個模塊 , 模塊互相調用的都是接口 。那么一個模塊完全不用關心其他模塊的接口是如何實現的 , 只需要專注自己的代碼即可 ?,F代的測試環境可以為接口模擬返回值 , 使模塊開發更方便,更不依賴于其他模塊 。

java中的接口的作用是什么啊我舉個我常遇見的小例子方便你理解 。


我們做java開發,通常用到數據庫 。數據庫有oracle,DB2等等 。不同的數據庫操作上有些差別 。

而我們做一個項目,賣給別人的是.class文件,也就是說,不能修改源碼了 。

如果客戶需求說,可能要換數據庫,你該怎么辦?功能一樣,但數據庫這些東西不一樣,這不一樣的東西通常的做法是把這個接口做多種不同的實現 。那樣我們做邏輯時,就可以用接口聲明對象 , 至于這個對象指向操作哪個數據庫的實現類 , 我們程序開發的不虛多管,事后一個配置文件就解決了 。(這個以后你深入學習Spring,了解依賴注入的機制后就明白了 。)

至于說重寫 , 誠然 , 某種程度相對于接口好用,好用的地方我就不說了 。我跟你說說項目開發的事 。通常,大項目不是一個人完成的,而是分模塊,每個人完成不同模塊,而不同模塊的功能有交互的地方 。這個時候我們就需要接口來定義規范,開發者按照定義好的規范進行編程,到時候,項目組其他成員與你模塊進行交互的時候只需要用接口聲明實例,調用接口的方法(反正他/她知道,這個方法是能進行那樣操作的 , 至于你怎么實現,完全不需理會 。) 。

java接口類有什么作用?接口是一個標準,是一個約定,而不是一種實現,接口的目的是為了規范實現類,這樣就可以不用具體管實現類,因為你不管怎是實現,我只要知道你是實現了這個接口 , 那么你肯定有那些方法 , 那么我調用這個接口的方法就肯定沒問題 。

舉個例子 , 有一個接口,規定一個方法 int calc(int b);
這個函數用于計算從1到b的和

比如有兩個類實現了這個接口
第一類是這么實現的
int calc(int b)
{
int sum = 0;
for(int i=1;i<=b;i++)
sum+=b;
return sum
}

第二個類是這么實現的
int calc(int b)
{
int sum = 0;
sum = (1+b) * b / 2
return sum;
}
可見不管哪個類實現了這個接口,我們只要調用calc方法就能計算出sum,而不用管他是怎么實現的

java中接口是什么意思接口可以說是為了提供一種規范 , 方便其他地方使用此規范的一種技術 。
在現實生活中可以接口的例子很多,比如USB接口 。它定義了USB口的大?。?4跟USB線每根線的顏色、作用等 。在軟件方面定義了供CPU調用的一些方法 。比如識別、啟動、彈出、傳送數據等等 。采用USB接口的設備很多,有鼠標、鍵盤、u盤等等 。每種設備實現識別、啟動、彈出、傳送數據的方式不一樣 。

在java中,接口定義了一些方法,但是不用去實現,而由實現了此接口的類去實現接口中定義的方法 , 比如有一個接口叫做USB,有一個類叫做鼠標,USB接口定義了啟動、傳送數據等方法 。那么鼠標實現了USB接口,就得實現啟動、傳送數據方法 。另外一個類叫做U盤也實現了USB接口、那么它也要實現啟動、傳送數據 。在鼠標或者U盤連接上電腦后 , CPU發現有USB設備連接上電腦了(cpu并不知道是什么設備 , 只知道是USB設備),這個時候CPU會發出啟動命令來啟動USB設備,而啟動鼠標和啟動U盤具體流程是不一樣的 , 這些啟動流程都是有鼠標和U盤各自來實現的 。

JAVA 中接口是什么意思?就類似電腦主機,把主機整體看做接口:
主機上的USB口,鼠標鍵盤口,電源口,視頻音頻口,還有其他一些串并口都看作是主機這個接口定義的方法 。
主機的從外面是看不到里面主板硬盤cpu的 。只要主機能正常運行 , 你是不需要去知道里面的主板硬盤CPU等是什么牌子 。你只需要把主機和顯示器鼠標鍵盤等外設連接好就可以工作,這一步就是調用接口的方法 。至于主機里面是怎么運行的 , 這些都交給各品牌的廠商來實現 , 這些廠商就是這個接口的實現類 。

而你在用電腦時只是接到主機的USB,鍵盤鼠標,電源,視頻音頻接口上而已 。至于這些接口是怎么實現的,你并不需要知道 。

而普通類的話,就類似你要使用電腦時,你必須要去設計實現USB接口 , 鼠標鍵盤,電源,視頻音頻接口等的工作方式,然后你才能像上面來使用電腦,這樣做的效率是不是很低 。

java的接口是什么意思,接口具體能做什么呢?java接口的用處主要體現在下面幾個方面:
 ?。?)通過接口可以實現不相關類的相同行為,而不需要了解對象所對應的類 。
 ?。?)通過接口可以指明多個類需要實現的方法 。
 ?。?)通過接口可以了解對象的交互界面 , 而不需了解對象所對應的類 。

類描述了一個實體 , 包括實體的狀態,也包括實體可能發出的動作 。
接口定義了一個實體可能發出的動作 。但是只是定義了這些動作的原型,沒有實現,也沒有任何狀態信息 。
所以接口有點象一個規范、一個協議 , 是一個抽象的概念;而類則是實現了這個協議,滿足了這個規范的具體實體,是一個具體的概念 。
從程序角度,簡單理解,接口就是函數聲明,類就是函數實現 。需要注意的是同一個聲明可能有很多種實現 。

1、接口中定義類方法的原型 , 但是不能說是空方法,因為空方法的意思是有實現體,只不過實現體是空操作 。實際上接口沒有定義任何實現體 。具體的實現體都是在實現接口的類中,接口只是定義了這些方法的調用方式 。
你當然也可以不用接口,直接在類里面寫方法,但是如果你的一組方法需要在很多類里實現 , 那么把它們抽象出來,做成一個接口規范,不是更好么?
2、一個類描述了一個實體,這個實體可能是一個復雜的對象,它的動作很多,如果把這些動作分類,用接口a定義其中的某一組動作,接口b定義其中的另外一組動作 , 這樣的結構,比較清楚 。
這種方式具備了多繼承的優點,避免了多繼承的缺陷 。實際上在歷史上,接口在很大程度上,是為了解決多繼承帶來的種種問題而設計出來的 。
3、包中那些已定義的接口 , 怎么知道那里面定義了什么方法 。
接口里定義了方法的輸入輸出,這些都是協議,具體的實現都在每個類中 。對于很多只需要抽象接口的地方,不需要知道具體的類是什么 , 只要這個類實現了這個接口就可以了 。

java怎么做對外接口public static String sendPostUrl(String url, String param, String charset) {PrintWriter out = null;BufferedReader in = null;String result = "";try {URL realUrl = new URL(url);// 打開和URL之間的連接URLConnection conn = realUrl.openConnection();// 設置通用的請求屬性conn.setRequestProperty("accept", "*/*");conn.setRequestProperty("connection", "Keep-Alive");conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");// 發送POST請求必須設置如下兩行conn.setDoOutput(true);conn.setDoInput(true);// 獲取URLConnection對象對應的輸出流out = new PrintWriter(conn.getOutputStream());// 發送請求參數out.print(param);// flush輸出流的緩沖out.flush();// 定義BufferedReader輸入流來讀取URL的響應in = new BufferedReader(new InputStreamReader(conn.getInputStream(), charset));String line;while ((line = in.readLine()) != null) {result += line;}} catch (Exception e) {System.out.println("發送 POST 請求出現異常!" + e);e.printStackTrace();}// 使用finally塊來關閉輸出流、輸入流finally {try {if (out != null) {out.close();}if (in != null) {in.close();}} catch (IOException ex) {ex.printStackTrace();}}return result;}

Java中為什么要引進接口的概念?java接口的用處主要體現在下面幾個方面:
 ?。?)通過接口可以實現不相關類的相同行為,而不需要了解對象所對應的類 。
 ?。?)通過接口可以指明多個類需要實現的方法 。
 ?。?)通過接口可以了解對象的交互界面,而不需了解對象所對應的類 。


類描述了一個實體,包括實體的狀態,也包括實體可能發出的動作 。
接口定義了一個實體可能發出的動作 。但是只是定義了這些動作的原型,沒有實現,也沒有任何狀態信息 。
所以接口有點象一個規范、一個協議,是一個抽象的概念;而類則是實現了這個協議 , 滿足了這個規范的具體實體,是一個具體的概念 。
從程序角度,簡單理解,接口就是函數聲明,類就是函數實現 。需要注意的是同一個聲明可能有很多種實現 。

1、接口中定義類方法的原型,但是不能說是空方法,因為空方法的意思是有實現體,只不過實現體是空操作 。實際上接口沒有定義任何實現體 。具體的實現體都是在實現接口的類中,接口只是定義了這些方法的調用方式 。
你當然也可以不用接口,直接在類里面寫方法 , 但是如果你的一組方法需要在很多類里實現 , 那么把它們抽象出來,做成一個接口規范,不是更好么?
2、一個類描述了一個實體,這個實體可能是一個復雜的對象,它的動作很多,如果把這些動作分類,用接口a定義其中的某一組動作,接口b定義其中的另外一組動作,這樣的結構,比較清楚 。
這種方式具備了多繼承的優點,避免了多繼承的缺陷 。實際上在歷史上,接口在很大程度上,是為了解決多繼承帶來的種種問題而設計出來的 。
3、包中那些已定義的接口 , 怎么知道那里面定義了什么方法 。
接口里定義了方法的輸入輸出,這些都是協議,具體的實現都在每個類中 。對于很多只需要抽象接口的地方,不需要知道具體的類是什么 , 只要這個類實現了這個接口就可以了 。

java 怎么做個對外接口public class Test {
public static void main(String[] args) {
float length = 2;
float width = 3;

Count count = new Rectangle();
System.out.println(count.countArea(length, width));
}
}
//接口
interface Count {
float countArea(float length, float width);
}
//接口實現類
class Rectangle implements Count {
public float countArea(float length, float width) {
return length*width;
}
}

java編程中什么情況下用接口希望你仔細閱讀 。對初學者來說,接口不是很好理解 。我教過的學生也都提出過這個問題 。

我們來看一個類

class A {
private int a;
public int getA() {
return a;
}
}

這個類的屬性是私有的,外界不能訪問,而外界可以通過公有方法來訪問這個類 。我們說一個類的公有方法就是這個類的對外接口 。通常

一個類的屬性都是私有的,方法大多是公有的 。外界只能過個這些公有方法來訪問類 。這也是Java封裝性的體現 。如果一個類沒有公有屬性,

也沒有公有方法 , 這個類就是無法使用的類了 。所以我們需要為一個類提供對外接口 。
一個類中的方法,不只是說明了它要“做什么”,而且方法的內容也說明了“怎么做” 。打個不太恰當的例子 , 一個殺人方法 。從名字上

看 , 你知道了“做什么”,但沒有辦法看到“怎么做” 。而方法的內容說明了“怎么做” 。

class killer {
private String name;
private int age;
private String phone;
private String addr;

......

public void kill(Person p) {
Qiang qiang = new Qiang("ak47");
qiang.fire(p);
}
}

這個類的kill方法內容說明了殺人的過程 。如果你不想用這種方式殺人 。因為你很BT,你想用毒藥殺人 。那么這個類的內容就需要改 。但

是,還有很多其它的“客戶”,需要用不同的方式殺人 。怎么辦呢?一個很好的辦法就是,我們只定義“做什么” , 而不定義“怎么做” 。

interface Killer {
public void kill(Person p);
}

接口說明了“做什么”,而實現這個接口的類,也就是實現類需要說明“怎么做” 。

class Killer1 implements Killer {
public void kill(Person p) {
Qiang qiang = new Qiang("ak47");
qiang.fire(p);
}
}

class Killer2 implements Killer {
public void kill(Person p) {
Bane bane = new Bane();
p.eat(bane);
}
}

public class Test {
public static void main(String[] args) {
Killer jingKe = new Killer1();
Person yingZheng = new Person();
jingKe.kill(yingZheng);
}
}

接口可以把“做什么”和“怎么做”分離開來 。這給Java帶來了很多好處 。雖然代碼量增加了,可我們的程序的可維護性加強了 。我們的程序是可以拆分的 。就象電腦一樣,可以拆分成很多組件 。我一直在想,如果我的MP3耳機可以拆分就好了,那樣在耳機只壞掉一個的時候就不用重新買一個了 。

java中為什么會有接口?首先,Java里面是不能多重繼承的,接口的使用可以幫助我們彌補這點其次 , 使用接口能隱藏我們程序內部的實現,我們只需要對外提供接口的調用,而將具體的實現放到實現接口的類里面 。還有呢就是想你所說的重載方法還不如直接在類里面定義,這點是可以達到目的,但是你這樣做是非常麻煩的 。接口就像插座一樣,一個插孔可以插很多種電器,這個插孔就是我們像外面提供的接口 , 所有的電器都要實現這個接口,也就是要把插頭做成這樣 。如果像你想的那樣,那我豈不是要為每一個電器都提供一中類型的插孔請采納答案,支持我一下 。

java中接口是什么意思?Java接口是Java語言中存在的結構,有特定的語法和結構,Java中的接口是一系列方法的聲明,是一些方法特征的集合,一個接口只有方法的特征沒有方法的實現,因此這些方法可以在不同的地方被不同的類實現,而這些實現可以具有不同的行為(功能) 。接口實現和類繼承的規則不同,因為Java接口不涉及表象 , 因此Java接口本身沒有任何實現 。
在一個等級結構中的任何一個類都可以實現一個接口,這個接口會影響到此類的所有子類,但不會影響到此類的任何超類 。此類將不得不實現這個接口所規定的方法,而其子類可以從此類自動繼承這些方法,當然也可以選擇置換掉所有的這些方法,或者其中的某一些方法,這時候,這些子類具有了可插入性(并且可以用這個接口類型裝載,傳遞實現了他的所有子類) 。
接口提供了關聯以及方法調用上的可插入性,軟件系統的規模越大 , 生命周期越長,接口使得軟件系統的靈活性和可擴展性 , 可插入性方面得到保證 。

java接口開發是什么意思?接口開發就是先定義一個接口 , 不進行具體的實現,由子類實現相應的方法 。如果有方法繼承這個接口方法,來進行具體的實現,也就是說的父類引用指向子類對象 。如父類是 “水果”,子類是“蘋果”,那么“水果水果類= new 蘋果();”實際上最后執行的方法是“蘋果”中的具體實現 。Java接口是Java語言中存在的結構,有特定的語法和結構,Java中的接口是一系列方法的聲明,是一些方法特征的集合 , 一個接口只有方法的特征沒有方法的實現 , 因此這些方法可以在不同的地方被不同的類實現,而這些實現可以具有不同的行為(功能) 。接口實現和類繼承的規則不同,因為Java接口不涉及表象,因此Java接口本身沒有任何實現 。
Java中的接口怎么實現?舉個面積的例子:在java中,定義一個接口,聲明計算長方形面積和周長的抽象方法,再用一個類去實現這個接口,再編寫一個測試類去使用這個接口 。首先 , 接口必須單獨存放,如果我們用eclipse編程的話 , 它們提示:The public type **** must be defined in its own file,意思是必須要定義在其自己的文件中 , 所以要為接口文件單獨存放起來,舉例,我們的接口要實現獲到矩形的長,寬,面積,周長 , 所以定義以下的接口 。public interface calrect {
public abstract int calarea();
public abstract int calgirth();
public abstract int getx();
public abstract int gety();
}注意,定義接口就像定義類一樣,接口的訪問控制符只能用public,用public定義的接口可以被所有的類和包引用,而缺省的則只能被同一個包中的其他類和接口引用 , 這符合JAVA中訪問控制符的一般要求,關于接口再引用其他接口則是后話 。以上接口文件名為calrect.java.另外需要指出的是接口中不能給方法給出方法體 。接下來,需要定義一個類來實現接口,因為不知道JAVA的內置矩形類是什么名,所以為了安全,將該類定義為RRect,這可以認為是一種安全策略 。關于implements,可以參考其他資料 。該類引用了接口calrect , 所以必須對calrect中的方法一一實現 。//定義矩形類 應用接口class RRect implements calrect{private int x;
private int y;public RRect (){
x=3;y=4;
}
public int calarea(){
return x*y;
}
public int calgirth(){
return x*2+y*2;
}
public int getx(){
return x;
}
public int gety(){
return y;
}
}//接下來,定義一個測試類,所謂測試類 , 我理解為定義一個類 , 在其定義類RRect的對象 , 并驗證其中的方法,看看是不是可以正常使用//定義Class1類
public class Class1{
RRect rect;
public static void main(String []args){
RRect rect=new RRect();
System.out.println("矩陣的長"+ rect.getx());
System.out.println("矩陣的寬"+ rect.calarea());
System.out.println("矩陣的面積"+ rect.calarea());
System.out.println("矩形的周長 "+rect.calgirth());
}

}運行結果:矩陣的長3
矩陣的寬12
矩陣的面積12
矩形的周長 14注:接口單存放,接口實現類和測試類可以存放在一個文件中

java 接口到底怎么用 ?到底應該怎么實現?接口是很重要的面向對象方式,繼承接口的類不用全部實現定義的接口,可以這么說 , 我定義了好多接口,某個類可以這么實現這個接口,到另一個類你又想那么實現接口,都是可以的 ?;蛘叨x完接口不想管他都可以 , 雖然很冗余 。接口不多了不影響操作 。比如:定義了一個線性表接口 。public interface Ilist {public void clear();public boolean isEmpty();public int length();}我想具體實現的話就建立以下實現類:import dao.Ilist;public class SqList implements Ilist {private Object[] listElem;// 線性表存儲空間private int curLen;// 線性表的當前長度// 順序表的構造函數,構造一個存儲空間容量為maxSize的線性表public SqList(int maxSize) {curLen = 0;listElem = new Object[maxSize];}public void clear() {curLen = 0;}public boolean isEmpty() {return curLen == 0;// curLen==0時為true,!=0時為false;}public int length() {return curLen;}
java 接口與實現類是怎么關聯起來的?接口和實現類通過implements關鍵字關聯起來 。舉例:1、接口定義public interface IA{//定義一個接口IApublic void show();//定義接口中的方法定義show}2、實現類public class A implements IA{//定義類A,通過implements實現接口IApublic void show(){//實現show方法System.out.println("IA");}}補充:implements是一個類實現一個接口用的關鍵字,它是用來實現接口中定義的抽象方法 。
java中接口實現多繼承是怎么實現的?在java當中,每個類(類java.lang.Object除外)有且僅有一個直接父類(下面有注釋),不能直接繼承多個父類,但是可以直接繼承多個接口,接口之間用逗號隔開(注意繼承接口時要實現接口中的方法)注釋:類的定義格式如下【類修飾詞列表】 class 類名 【extends父類名】 【implements 接口名稱列表】{類體}①其中【】中的內容不是必須寫的(在定義類的時候不用寫【】 , 直接寫當中的內容)②如果含有"extends 父類名",則由該選項指定的父類是當前定義類的直接父類,否則當前定義類的直接父類是類java.lang.Object③繼承關系具有傳遞性:例如類A有父類B , 類B擁有父類C,則C也可以稱為是A的父類(不是直接父類)
java中 接口可以怎么通俗的理解? 接口 與 實現接口類 的關系?java是只支持單繼承的 , 這樣有很多不便 。為了解決這個問題,采用接口的方法,java支持多實現,就是一個類可以實現多個接口,在實現接口的同時還可以繼承一個類,你實現了這個接口也類似于繼承了這個接口 。
接口中的方法都是抽象的,沒有方法體的,其作用就是讓子類實現的,方法默認有publicabstract
接口中的屬性默認加修飾符,public static final,所以可以通過類名調用,也可以通過對象調用 。
另外接口也是為多態提供方便 。

JAVA 中接口 中的定義聲明是什么作用???con把它想象成一個指針 , 指向引用了Contact 接口的類的對象

JAVA中什么是接口Java接口是一系列方法的聲明,是一些方法特征的集合,一個接口只有方法的特征沒有方法的實現,因此這些方法可以在不同的地方被不同的類實現,而這些實現可以具有不同的行為(功能) 。
綜合來說有兩種含義:
一,Java接口,Java語言中存在的結構,有特定的語法和結構;
二 , 一個類所具有的方法的特征集合,是一種邏輯上的抽象 。前者叫做“Java接口”,后者叫做“接口” 。

java接口定義什么?抽象方法,如增刪改查...etc.

java編程中 接口的好處有哪些?舉例說明1,接口是用來規范類的,它可以避免類在設計上的不一致,這在多人合作的開發中猶為重要,就比如接口中有A方法,那么實現這個接口就必須實現A方法,這就形成了一種規范
2,因為java不像C++那樣可以多重繼承類,只有單承繼承,使用接口可以達到多重繼承的目的,而沒有其缺點 。
3,一定程度保證了代碼的安全性 。使用者只能通過調用接口提供的方法 , 并不能對代碼進行修改和查看源代碼 。

java 接口中再定義接口 算怎么回事這個沒有怎么回事 , 其實就是兩個接口 。因為接口永遠都是public的,只能說這樣的寫法風格不好 。更好的寫法是將兩個接口單獨使用兩個類文件進行定義 。

java 使用接口的好處?什么是接口?
Java中的接口是一系列方法的聲明,是一些方法特征的集合,一個接口只有方法的特征沒有方法的實現,因此這些方法可以在不同的地方被不同的類實現,而這些實現可以具有不同的行為(功能) 。
接口的兩種含義:一 , Java接口 , Java語言中存在的結構,有特定的語法和結構;二,一個類所具有的方法的特征集合 , 是一種邏輯上的抽象 。前者叫做“Java接口” , 后者叫做“接口” 。
在Java語言規范中,一個方法的特征僅包括方法的名字,參數的數目和種類,而不包括方法的返回類型,參數的名字以及所拋出來的異常 。在Java編譯器檢查方法的重載時,會根據這些條件判斷兩個方法是否是重載方法 。但在Java編譯器檢查方法的置換時,則會進一步檢查兩個方法(分處超類型和子類型)的返還類型和拋出的異常是否相同 。
接口繼承和實現繼承的規則不同,一個類只有一個直接父類,但可以實現多個接口 。
Java接口本身沒有任何實現,因為Java接口不涉及表象 , 而只描述public行為 , 所以Java接口比Java抽象類更抽象化 。
Java接口的方法只能是抽象的和公開的,Java接口不能有構造器,Java接口可以有public,靜態的和final屬性 。
接口把方法的特征和方法的實現分割開來 。這種分割體現在接口常常代表一個角色,它包裝與該角色相關的操作和屬性,而實現這個接口的類便是扮演這個角色的演員 。一個角色由不同的演員來演,而不同的演員之間除了扮演一個共同的角色之外,并不要求其它的共同之處 。
為什么使用接口?
兩個類中的兩個類似的功能,調用他們的類動態的決定一種實現 , 那他們提供一個抽象父類,子類分別實現父類所定義的方法 。
問題的出現:Java是一種單繼承的語言,一般情況下,哪個具體類可能已經有了一個超類,解決是給它的父類加父類,或者給它父類的父類加父類,只到移動到類等級結構的最頂端 。這樣一來,對一個具體類的可插入性的設計,就變成了對整個等級結構中所有類的修改 。
接口是可插入性的保證 。
在一個等級結構中的任何一個類都可以實現一個接口,這個接口會影響到此類的所有子類,但不會影響到此類的任何超類 。此類將不得不實現這個接口所規定的方法,而其子類可以從此類自動繼承這些方法,當然也可以選擇置換掉所有的這些方法,或者其中的某一些方法,這時候,這些子類具有了可插入性(并且可以用這個接口類型裝載,傳遞實現了他的所有子類) 。
我們關心的不是那一個具體的類,而是這個類是否實現了我們需要的接口 。
接口提供了關聯以及方法調用上的可插入性,軟件系統的規模越大 , 生命周期越長,接口使得軟件系統的靈活性和可擴展性,可插入性方面得到保證 。
類型
使用Java接口將軟件單位與內部和外部耦合起來 。使用Java接口不是具體的類進行變量的類型聲明,方法的返還類型聲明 , 參量的類型聲明,以及數據類型的轉換 。
在理想的情況下,一個具體的Java類應當只實現Java接口和抽象Java類中聲明的方法,而不應當給多余方法 。
類型等級結構
Java接口(以及抽象類)一般用來作為一個類型的等級結構的起點 。
如果一個類已經有了一個主要的超類型,那么通過實現一個接口,這個類可以擁有另一個次要的超類型,這種次要的超類型叫做混合類型 。
Java接口常用方法
單方法接口
public inte***ce Actionlistener(){
public abstract void actionPerformed(ActionEvent event);
}
僅且只有一個方法,只有實現了這個接口(重寫這個接口中的唯一一個方法),你才有資格去事件監聽器列表里注冊(參數為Actionlistener類型),當事件源變動時,自動調用這個唯一的actionPerformed方法 。
標識接口
是沒有任何方法和屬性的接口 。標識接口不對實現它的類有任何語意上的要求,它僅僅表明了實現它的類屬于一個特定的類型(傳遞) 。
不推薦過多的使用標識接口 。
常量接口
用Java接口來聲明一些常量,然后由實現這個接口的類使用這些常量(以前在做畫板的時候這么干過) 。建議不要模仿這種常量接口的做法 。

java中的接口有什么作用?【java接口】1、定義接口的重要性:在Java編程,abstract class 和interface是支持抽象類定義的兩種機制 。正是由于這兩種機制的存在 , 才使得Java成為面向對象的編程語言 。
2、定義接口有利于代碼的規范:對于一個大型項目而言,架構師往往會對一些主要的接口來進行定義,或者清理一些沒有必要的接口 。這樣做的目的一方面是為了給開發人員一個清晰的指示,告訴他們哪些業務需要實現;同時也能防止由于開發人員隨意命名而導致的命名不清晰和代碼混亂,影響開發效率 。
3、有利于對代碼進行維護:比如你要做一個畫板程序,其中里面有一個面板類 , 主要負責繪畫功能,然后你就這樣定義了這個類 。可是在不久將來,你突然發現現有的類已經不能夠滿足需要,然后你又要重新設計這個類,更糟糕是你可能要放棄這個類,那么其他地方可能有引用他,這樣修改起來很麻煩 。如果你一開始定義一個接口,把繪制功能放在接口里,然后定義類時實現這個接口,然后你只要用這個接口去引用實現它的類就行了,以后要換的話只不過是引用另一個類而已,這樣就達到維護、拓展的方便性 。
4、保證代碼的安全和嚴密:一個好的程序一定符合高內聚低耦合的特征,那么實現低耦合,定義接口是一個很好的方法,能夠讓系統的功能較好地實現,而不涉及任何具體的實現細節 。這樣就比較安全、嚴密一些,這一思想一般在軟件開發中較為常見 。

JAVA怎么調用接口?String sendPost(String jsonStr, String path)
throws IOException {
byte[] data = https://www.zaoxu.com/jjsh/bkdq/jsonStr.getBytes();
java.net.URL url = new java.net.URL(path);
java.net.HttpURLConnection conn =
(java.net.HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setConnectTimeout(5 * 1000);// 設置連接超時時間為5秒
conn.setReadTimeout(20 * 1000);// 設置讀取超時時間為20秒
// 使用 URL 連接進行輸出,則將 DoOutput標志設置為 true
conn.setDoOutput(true);

conn.setRequestProperty("Content-Type", "text/xml;charset=UTF-8");
//conn.setRequestProperty("Content-Encoding","gzip");
conn.setRequestProperty("Content-Length", String.valueOf(data.length));
OutputStream outStream = conn.getOutputStream();// 返回寫入到此連接的輸出流
outStream.write(data);
outStream.close();//關閉流
String msg = "";// 保存調用http服務后的響應信息
// 如果請求響應碼是200,則表示成功
if (conn.getResponseCode() == 200) {
// HTTP服務端返回的編碼是UTF-8,故必須設置為UTF-8,保持編碼統一,否則會出現中文亂碼
BufferedReader in = new BufferedReader(new InputStreamReader(
(InputStream) conn.getInputStream(), "UTF-8"));
msg = in.readLine();
in.close();
}
conn.disconnect();// 斷開連接
return msg;
}

java如何調用接口public interface PetInterface {

public abstract void pet();
}

比如說你的Fruit類實現PetInterface接口寫法為:
class Fruit implemented PetInterface{
public void pet(){

}
public void hitChild(){

System.out.println("水果:");

}

java如何調用webservice接口Java通過WSDL文件來調用webservice直接調用模式如下:import java.util.Date;import java.text.DateFormat;import org.apache.axis.client.Call;import org.apache.axis.client.Service;import javax.xml.namespace.QName;import java.lang.Integer;import javax.xml.rpc.ParameterMode;public class caClient {public static void main(String[] args) {try {String endpoint = "http://localhost:8080/ca3/services/caSynrochnized?wsdl";//直接引用遠程的wsdl文件//以下都是套路 Service service = new Service();Call call = (Call) service.createCall();call.setTargetEndpointAddress(endpoint);call.setOperationName("addUser");//WSDL里面描述的接口名稱call.addParameter("userName", org.apache.axis.encoding.XMLType.XSD_DATE,javax.xml.rpc.ParameterMode.IN);//接口的參數call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);//設置返回類型String temp = "測試人員";String result = (String)call.invoke(new Object[]{temp});//給方法傳遞參數 , 并且調用方法System.out.println("result is "+result);}catch (Exception e) {System.err.println(e.toString());}}}
java中接口直接調用方法?service.login(xx,xx)直接調用就行了,實例需是子類對象 。。這樣調用會有問題,如果多個類實現了這個接口,那么你的這個調用就會有問題,就是說,使用實現類去調用這個方法 , 實現的是具體的功能,沒有必要用service.login()

在java中調用接口聲明的方法,該接口的是如何找到實現類中對應的方法的?所謂多態,是把不同的子類對象都當作父類來看,可以屏蔽不同子類對象之間的差異,但子類實例的本身類型沒有改變;如:
A x = new B();
這里雖然是聲明了一個 A 類型變量 , 但 x 的值仍然是指向一個B類型,也就是說x.save()是直接調用 B 類對象的save方法,并沒有通過其他方式,它本身就是B類型對象 , 你可以打印信息 println(x.getClass()),它輸出的是 B 類而不是 A 類 。

java怎么定義一個接口?java中接口的定義和接口的實現1.接口的定義使用interface來定義一個接口 。接口定義同類的定義類似,也是分為接口的聲明和接口體,其中接口體由常量定義和方法定義兩部分組成 。定義接口的基本格式如下:[修飾符] interface 接口名 [extends 父接口名列表]{[public] [static] [final] 常量;[public] [abstract] 方法;}修飾符:可?。?用于指定接口的訪問權限,可選值為public 。如果省略則使用默認的訪問權限 。接口名:必選參數,用于指定接口的名稱 , 接口名必須是合法的Java標識符 。一般情況下,要求首字母大寫 。extends 父接口名列表:可選參數,用于指定要定義的接口繼承于哪個父接口 。當使用extends關鍵字時 , 父接口名為必選參數 。方法:接口中的方法只有定義而沒有被實現 。例如,定義一個用于計算的接口,在該接口中定義了一個常量PI和兩個方法,具體代碼如下:1 public interface CalInterface2 {3final float PI=3.14159f;//定義用于表示圓周率的常量PI4float getArea(float r);//定義一個用于計算面積的方法getArea()5float getCircumference(float r);//定義一個用于計算周長的方法getCircumference()6 }注意:與Java的類文件一樣,接口文件的文件名必須與接口名相同 。2.接口的實現接口在定義后,就可以在類中實現該接口 。在類中實現接口可以使用關鍵字implements,其基本格式如下:[修飾符] class[extends 父類名] [implements 接口列表]{}修飾符:可選參數,用于指定類的訪問權限,可選值為public、abstract和final 。類名:必選參數,用于指定類的名稱,類名必須是合法的Java標識符 。一般情況下,要求首字母大寫 。extends 父類名:可選參數,用于指定要定義的類繼承于哪個父類 。當使用extends關鍵字時,父類名為必選參數 。implements 接口列表:可選參數,用于指定該類實現的是哪些接口 。當使用implements關鍵字時,接口列表為必選參數 。當接口列表中存在多個接口名時,各個接口名之間使用逗號分隔 。在類中實現接口時,方法的名字、返回值類型、參數的個數及類型必須與接口中的完全一致,并且必須實現接口中的所有方法 。例如 , 編寫一個名稱為Cire的類,該類實現5.7.1節中定義的接口Calculate,具體代碼如下:1 public class Cire implements CalInterface2 {3public float getArea(float r)4{5float area=PI*r*r;//計算圓面積并賦值給變量area6return area;//返回計算后的圓面積7}8public float getCircumference(float r)9{10float circumference=2*PI*r;//計算圓周長并賦值給變量circumference11return circumference;//返回計算后的圓周長12}13public static void main(String[] args)14{15Cire c = new Cire();16float f = c.getArea(2.0f);17System.out.println(Float.toString(f));18}19 }在類的繼承中,只能做單重繼承,而實現接口時,一次則可以實現多個接口 , 每個接口間使用逗號“,”分隔 。這時就可能出現常量或方法名沖突的情況,解決該問題時,如果常量沖突,則需要明確指定常量的接口,這可以通過“接口名.常量”實現 。如果出現方法沖突時,則只要實現一個方法就可以了 。下面通過一個具體的實例詳細介紹以上問題的解決方法 。
java怎樣創建接口 , 應用接口創建接口:public interface myFirstInterface()
{
int ID=1;
void run();
void smile();
}
在本次創建的接口中,定義了一個int的ID 和一個方法run,在接口中,雖然沒有顯示的寫出public 關鍵字,但是所有的成員都是public反問的,接口里面的變量都默認的是public static final的,所以,借口里面定義的變量可以當成全局的靜態變量.
實現接口有幾種方式:
第一種:部分實現,就是定義一個抽象類,來實現接口中的部分方法.
定義抽象類的例子
abstract class A implements myFirstInterface
{
public void run()
{
System.out.println("I am running!");
}
}
第二種方法,定義一個類,實現接口中的全部方法:
abstract class B implements myFirstInterface
{
public void run()
{
System.out.println("I am running!");
}
public void smile()
{
System.out.println("I am smiling!");
}
}
另外,接口的提出,是為了實現java中的多繼承.一個類可以在繼承一個類后在來實現一個或者多個接口.

不知道你明白了沒有~?

JAVA里怎么定義接口public interface TestInterface() {
//里面有一些方法需要實現這個接口的類去實現的
public void doSomething();
}

注意:1、接口里面的方法沒有實現體 。2、實現這個接口的類必須要實現接口里面的方法 。3、接口和接口的方法必須被聲明為public的 。
和靜態沒有直接必然的關系 。

java什么是接口 , 如何定義接口Java接口是一系列方法的聲明,是一些方法特征的集合,一個接口只有方法的特征沒有方法的實現,因此這些方法可以在不同的地方被不同的類實現,而這些實現可以具有不同的行為(功能) 。接口定義和類定義差不多public interface A{void fun1();void fun2();}

java中如何定義和使用接口?接口只是定義一些方法和屬性,來規范類的行為.接口舉例:public interface ITest 【extends 父接口.....】//[]可選{[ public] void [返回類型] test();//前面的修飾符為可選不過建議加上不加的話編譯器編譯時默認編譯為public 接口修飾也是一樣}使用接口的,類使用implements 實現ITest 接口.然后添加接口中定義的方法到類中,并實現他們.即可/