亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java中的接口知識匯總

 更新時(shí)間:2016年04月21日 08:50:38   作者:淚灑星辰  
本文給大家匯總介紹了在java中的接口知識,包括為什么要使用接口、什么是接口、抽象類和接口的區(qū)別、如何定義接口以及定義接口注意點(diǎn),希望大家能夠喜歡

一.為什么要使用接口

 假如有一個(gè)需求:要求實(shí)現(xiàn)防盜門的功能。門有"開"和"關(guān)"的功能,鎖有"上鎖"和"開鎖"的功能。

分析:首先防盜門是一個(gè)門,門有開門和關(guān)門的功能,還有一把鎖,鎖有開鎖和上鎖,按照面向?qū)ο蟮木幊痰乃枷?,我們會將門和鎖都作為一個(gè)類而單獨(dú)存在,但是,不能讓防盜門繼承自門的同時(shí)又繼承自鎖,防盜門不是鎖,不符合繼承中is a的關(guān)系,在java中支持單繼承。那么我們?nèi)绾蝸斫鉀Q這一問題,這時(shí)就要用到接口。

    二.什么是接口

    在軟件中接口是一種規(guī)范和標(biāo)準(zhǔn),他們可以約束類的行為,是一些方法特征的集合,但是沒有方法的實(shí)現(xiàn),接口其實(shí)上也可以看做是一個(gè)特殊的抽象類,但是采用和抽象類完全不同的方法來表示,兩者的設(shè)計(jì)理念也是不同的,抽象類有利于代碼復(fù)用,接口利于代碼的擴(kuò)展和維護(hù)。

    三.抽象類和接口的區(qū)別:

01抽象類可以提供成員方法的實(shí)現(xiàn)細(xì)節(jié),而接口中只能存在public abstract 方法;

02.抽象類中的成員變量可以是各種類型的,而接口中的成員變量只能是public static final類型的;

03.接口中不能含有靜態(tài)代碼塊以及靜態(tài)方法,而抽象類可以有靜態(tài)代碼塊和靜態(tài)方法;

04.一個(gè)類只能繼承一個(gè)抽象類,而一個(gè)類卻可以實(shí)現(xiàn)多個(gè)接口。

   四.如何定義接口

  首先先來看一下語法:

   [修飾符] interface 接口名 extends 父接口1,父接口2,...

   {

     //常量定義

     //方法定義

   }

   在一個(gè)類中實(shí)現(xiàn)接口語法:

class 類名 父類名 implements 接口1,接口2,.....

{

  //類成員

}

五.定義接口注意點(diǎn)

   01.接口的命名規(guī)則與類相同,如果修飾符是public ,則該接口在整個(gè)項(xiàng)目中可見;如果省略修飾符,則該接口只在當(dāng)前包中可見。

   02.接口中可以定義常量,不能定義變量,如果你在接口中定義屬性,那么通過反編譯可以看見他會自動用public static final 修飾,接口中的屬性都是全局靜態(tài)常量,接口中的常量必須在定義時(shí)指定初始值。

    03.接口中所有的方法都是抽象方法,接口中方法都會自動用public abstract 修飾,即接口中只有全局抽象方法。

    04.接口不能實(shí)例化,接口中不能有構(gòu)造。

    05接口之間可以通過extends實(shí)現(xiàn)繼承關(guān)系,一個(gè)接口可以繼承多個(gè)接口,但接口不能繼承類。

    06.接口的實(shí)現(xiàn)類必須實(shí)現(xiàn)接口的全部方法,否則必須定義為抽象類。

相關(guān)文章

  • Java?Spring的核心與設(shè)計(jì)思想你知道嗎

    Java?Spring的核心與設(shè)計(jì)思想你知道嗎

    這篇文章主要為大家詳細(xì)介紹了Java?Spring的核心與設(shè)計(jì)思想,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • 淺談關(guān)于Java正則和轉(zhuǎn)義中\(zhòng)\和\\\\的理解

    淺談關(guān)于Java正則和轉(zhuǎn)義中\(zhòng)\和\\\\的理解

    這篇文章主要介紹了淺談關(guān)于Java正則和轉(zhuǎn)義中\(zhòng)\和\\\\的理解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • springboot中非容器類如何獲取配置文件數(shù)據(jù)

    springboot中非容器類如何獲取配置文件數(shù)據(jù)

    這篇文章主要介紹了springboot中非容器類如何獲取配置文件數(shù)據(jù)問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • java開發(fā)接口吞吐量提升10多倍技巧

    java開發(fā)接口吞吐量提升10多倍技巧

    這篇文章主要為大家介紹了java開發(fā)技巧之接口吞吐量提升10多倍的方法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • SpringBoot環(huán)境屬性占位符解析和類型轉(zhuǎn)換方式

    SpringBoot環(huán)境屬性占位符解析和類型轉(zhuǎn)換方式

    這篇文章主要介紹了SpringBoot環(huán)境屬性占位符解析和類型轉(zhuǎn)換方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • Spring詳細(xì)解讀事務(wù)管理

    Spring詳細(xì)解讀事務(wù)管理

    Spring事務(wù)的本質(zhì)就是對數(shù)據(jù)庫事務(wù)的支持,沒有數(shù)據(jù)庫事務(wù),Spring是無法提供事務(wù)功能的。Spring只提供統(tǒng)一的事務(wù)管理接口,具體實(shí)現(xiàn)都是由數(shù)據(jù)庫自己實(shí)現(xiàn)的,Spring會在事務(wù)開始時(shí),根據(jù)當(dāng)前設(shè)置的隔離級別,調(diào)整數(shù)據(jù)庫的隔離級別,由此保持一致
    2022-04-04
  • Java overload和override的區(qū)別分析

    Java overload和override的區(qū)別分析

    方法的重寫(Overriding)和重載(Overloading)是Java多態(tài)性的不同表現(xiàn),想要了解更多請參考本文
    2012-11-11
  • SpringBoot常見get/post請求參數(shù)處理、參數(shù)注解校驗(yàn)及參數(shù)自定義注解校驗(yàn)詳解

    SpringBoot常見get/post請求參數(shù)處理、參數(shù)注解校驗(yàn)及參數(shù)自定義注解校驗(yàn)詳解

    這篇文章主要給大家介紹了關(guān)于SpringBoot常見get/post請求參數(shù)處理、參數(shù)注解校驗(yàn)及參數(shù)自定義注解校驗(yàn)的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-03-03
  • 淺談Java封裝、繼承、多態(tài)特性

    淺談Java封裝、繼承、多態(tài)特性

    大家好,本篇文章主要講的是淺談Java封裝、繼承、多態(tài)特性,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • JRebel2023.3 插件使用及安裝步驟詳解

    JRebel2023.3 插件使用及安裝步驟詳解

    JRebel是一款JVM插件,它使得Java代碼修改后不用重啟系統(tǒng),立即生效,IDEA上原生是不支持熱部署的,一般更新了 Java 文件后要手動重啟 Tomcat 服務(wù)器,才能生效,浪費(fèi)時(shí)間浪費(fèi)生命,目前對于idea熱部署最好的解決方案就是安裝JRebel插件,本文分步驟介紹的非常詳細(xì),一起看看吧
    2023-08-08

最新評論