最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解JAVA中接口的定義和接口的實現

 更新時間:2020年06月05日 16:33:55   作者:易小川  
這篇文章主要介紹了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的類文件一樣,接口文件的文件名必須與接口名相同。

2.接口的實現

接口在定義后,就可以在類中實現該接口。在類中實現接口可以使用關鍵字implements,其基本格式如下:

[修飾符] class <類名> [extends 父類名] [implements 接口列表]{
}

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

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

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

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

接口對于其聲明、變量和方法都做了許多限制,這些限制作為接口的特征歸納如下:

(1)  具有 public 訪問控制符的接口,允許任何類使用;沒有指定 public 的接口,其訪問將局限于所屬的包。

(2)  方法的聲明不需要其他修飾符,在接口中聲明的方法,將隱式地聲明為公有的(public)和抽象的(abstract)。

(3)  在 Java 接口中聲明的變量其實都是常量,接口中的變量聲明,將隱式地聲明為 public、static 和 final,即常量,所以接口中定義的變量必須初始化。

(4)  接口沒有構造方法,不能被實例化。

(5)  一個接口不能夠實現另一個接口,但它可以繼承多個其他接口。子接口可以對父接口的方法和常量進行重寫

在類中實現接口時,方法的名字、返回值類型、參數的個數及類型必須與接口中的完全一致,并且必須實現接口中的所有方法。例如,編寫一個名稱為Cire的類,該類實現5.7.1節(jié)中定義的接口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));
 }
}

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

以上就是詳解JAVA中接口的定義和接口的實現的詳細內容,更多關于JAVA 接口定義和接口實現的資料請關注腳本之家其它相關文章!

相關文章

  • Java創(chuàng)建線程的七種方法總結(全網最全面)

    Java創(chuàng)建線程的七種方法總結(全網最全面)

    線程是Java中的基本執(zhí)行單元,它允許程序在同一時間執(zhí)行多個任務,下面這篇文章主要給大家總結介紹了關于Java創(chuàng)建線程的七種方法,文中通過實例代碼將這七種方法介紹的非常詳細,需要的朋友可以參考下
    2023-05-05
  • Spring JPA聯表查詢之OneToOne源碼詳解

    Spring JPA聯表查詢之OneToOne源碼詳解

    這篇文章主要為大家介紹了Spring JPA聯表查詢之OneToOne源碼詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • 深入了解JAVA Jersey框架

    深入了解JAVA Jersey框架

    這篇文章主要介紹了JAVA Jersey的概念以及使用方法,文中講解非常詳細,對大家的學習工作有所幫助,感興趣的朋友可以參考下
    2020-06-06
  • Springboot實現Shiro整合JWT的示例代碼

    Springboot實現Shiro整合JWT的示例代碼

    這篇文章主要介紹了Springboot實現Shiro整合JWT的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • Spring RestTemplate的使用與踩坑

    Spring RestTemplate的使用與踩坑

    RestTemplate是一個執(zhí)行HTTP請求的同步阻塞式工具類,它僅僅只是在HTTP客戶端庫基礎上,封裝了更加簡單易用的模板方法API,方便程序員利用已提供的模板方法發(fā)起網絡請求和處理,能很大程度上提升我們的開發(fā)效率
    2023-02-02
  • java類中元素初始化順序詳解

    java類中元素初始化順序詳解

    對于靜態(tài)變量、靜態(tài)初始化塊、變量、初始化塊、構造器,它們的初始化順序依次是(靜態(tài)變量、靜態(tài)初始化塊)>(變量、初始化塊)>構造器
    2013-08-08
  • 詳解SpringSecurity中的Authentication信息與登錄流程

    詳解SpringSecurity中的Authentication信息與登錄流程

    這篇文章主要介紹了SpringSecurity中的Authentication信息與登錄流程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • SpringBoot利用AOP實現一個日志管理詳解

    SpringBoot利用AOP實現一個日志管理詳解

    目前有這么個問題,有兩個系統(tǒng)CSP和OMS,這倆系統(tǒng)共用的是同一套日志操作:Log;目前想區(qū)分下這倆系統(tǒng)的日志操作,那沒辦法了,只能重寫一份Log的日志操作。本文就將利用AOP實現一個日志管理,需要的可以參考一下
    2022-09-09
  • spring?@Primary-在spring中的使用方式

    spring?@Primary-在spring中的使用方式

    這篇文章主要介紹了spring?@Primary-在spring中的使用方式,具有很好的參考價值,希望對大家有所幫助。
    2022-01-01
  • 詳解Spring Security中獲取當前登錄用戶的詳細信息的幾種方法

    詳解Spring Security中獲取當前登錄用戶的詳細信息的幾種方法

    本文主要介紹了詳解Spring Security中獲取當前登錄用戶的詳細信息的幾種方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-05-05

最新評論

宣化县| 德昌县| 平度市| 灯塔市| 宿迁市| 织金县| 时尚| 古蔺县| 舞钢市| 沅江市| 濉溪县| 曲阳县| 望都县| 平邑县| 兴山县| 安义县| 嵩明县| 九江市| 宜章县| 南皮县| 广德县| 赤峰市| 雷山县| 资阳市| 云阳县| 彭阳县| 五指山市| 噶尔县| 鹿泉市| 吉木乃县| 宜君县| 大化| 安达市| 阿克陶县| 深圳市| 鸡东县| 元江| 永福县| 德钦县| 漳州市| 区。|