中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

詳解Java中接口的定義與實例代碼

發布時間:2020-09-10 13:55:29 來源:腳本之家 閱讀:128 作者:lqh 欄目:編程語言

Java中接口的定義詳解

1、定義接口

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

[修飾符] interface 接口名 [extends 父接口名列表]{
[public] [static] [final] 常量;
[public] [abstract] 方法;
}

修飾符:可選,用于指定接口的訪問權限,可選值為public。如果省略則使用默認的訪問權限。

接口名:必選參數,用于指定接口的名稱,接口名必須是合法的Java標識符。一般情況下,要求首字母大寫。

extends 父接口名列表:可選參數,用于指定要定義的接口繼承于哪個父接口。當使用extends關鍵字時,父接口名為必選參數。

方法:接口中的方法只有定義而沒有被實現。

例如,定義一個用于計算的接口,在該接口中定義了一個常量PI和兩個方法,具體代碼如下:

public interface CalInterface 
{ 
 final float PI=3.14159f;//定義用于表示圓周率的常量PI 
 float getArea(float r);//定義一個用于計算面積的方法getArea() 
 float getCircumference(float r);//定義一個用于計算周長的方法getCircumference() 
} 

注意:

    與Java的類文件一樣,接口文件的文件名必須與接口名相同。

實現接口

接口在定義后,就可以在類中實現該接口。在類中實現接口可以使用關鍵字implements,其基本格式如下:
[修飾符] class <類名> [extends 父類名] [implements 接口列表]{
}

修飾符:可選參數,用于指定類的訪問權限,可選值為public、abstract和final。

類名:必選參數,用于指定類的名稱,類名必須是合法的Java標識符。一般情況下,要求首字母大寫。

extends 父類名:可選參數,用于指定要定義的類繼承于哪個父類。當使用extends關鍵字時,父類名為必選參數。

implements 接口列表:可選參數,用于指定該類實現的是哪些接口。當使用implements關鍵字時,接口列表為必選參數。當接口列表中存在多個接口名時,各個接口名之間使用逗號分隔。

    在類中實現接口時,方法的名字、返回值類型、參數的個數及類型必須與接口中的完全一致,并且必須實現接口中的所有方法。例如,編寫一個名稱為Cire的類,該類實現5.7.1節中定義的接口Calculate,具體代碼如下:

public class Cire implements CalInterface 
{ 
 public float getArea(float r) 
 { 
  float area=PI*r*r;//計算圓面積并賦值給變量area 
  return area;//返回計算后的圓面積 
 } 
 public float getCircumference(float r) 
 { 
  float circumference=2*PI*r;  //計算圓周長并賦值給變量circumference 
  return circumference;   //返回計算后的圓周長 
 } 
 public static void main(String[] args) 
 { 
  Cire c = new Cire(); 
  float f = c.getArea(2.0f); 
  System.out.println(Float.toString(f)); 
 } 
} 

      在類的繼承中,只能做單重繼承,而實現接口時,一次則可以實現多個接口,每個接口間使用逗號“,”分隔。這時就可能出現常量或方法名沖突的情況,解決該問題時,如果常量沖突,則需要明確指定常量的接口,這可以通過“接口名.常量”實現。如果出現方法沖突時,則只要實現一個方法就可以了。下面通過一個具體的實例詳細介紹以上問題的解決方法。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細節

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

AI

浦江县| 五河县| 汾西县| 马山县| 榕江县| 府谷县| 个旧市| 新安县| 汾西县| 定结县| 从化市| 乌拉特前旗| 五寨县| 同仁县| 霍邱县| 朝阳区| 商河县| 绥宁县| 彰化市| 池州市| 凤山县| 泾源县| 大安市| 白玉县| 藁城市| 黄大仙区| 桃园市| 岐山县| 屏东县| 博湖县| 乐亭县| 黔西县| 长寿区| 焦作市| 海兴县| 红桥区| 蒙阴县| 陕西省| 邳州市| 博白县| 房产|