如何理解接口-Java系列?
你好,我我是吉爾·艾菲,9年IT從業(yè)者。我來(lái)回答你的問(wèn)題。
讓讓我們先來(lái)看看Java接口的定義。
Java接口是一系列方法的聲明,是一些方法特性的集合。一個(gè)接口只有方法的特性,沒(méi)有方法實(shí)現(xiàn),所以這些方法可以在不同的地方被不同的類(lèi)實(shí)現(xiàn),這些實(shí)現(xiàn)可以有不同的行為(函數(shù))。
以上是百度百科對(duì)Java接口的解釋。那我就用一個(gè)簡(jiǎn)單的例子來(lái)說(shuō)明。我們?cè)谌粘I钪卸伎措娨暋H缓箅娨曔b控器就像一個(gè)界面。調(diào)高電視遙控器的音量,更換頻道。這些是接口的方法。至于方法是如何實(shí)現(xiàn)的,就要用方法的實(shí)現(xiàn)類(lèi)來(lái)具體寫(xiě)了。
接口可以定義變量和方法,變量將被隱式定義為publicstaticfinal。其他修飾將編譯并報(bào)告錯(cuò)誤。方法被隱式定義為公共靜態(tài)類(lèi)型。
以上說(shuō)明了接口的方法和屬性被修改后可以在其他類(lèi)中調(diào)用,所以這種方法是比較安全的。也是比較符合編程規(guī)范的一種。
以上是我的回答,希望對(duì)你有幫助。
一句話解釋。告訴程序做什么,而不是怎么做。接口用于實(shí)現(xiàn)這一目標(biāo)。比如現(xiàn)實(shí)生活中的插座就是接口,規(guī)定只要有對(duì)應(yīng)的插頭就可以使用。但是沒(méi)有具體的電器。
至于為什么要有接口,就像我為什么要設(shè)計(jì)插座一樣,而不是每一個(gè)電器都要手動(dòng)接線。因?yàn)槟銢](méi)有。;當(dāng)你設(shè)計(jì)的時(shí)候,我不知道具體的程序是什么。或者你想隨時(shí)改變你的程序。
與他相關(guān)的概念是依賴(lài)注入。其實(shí)就是實(shí)現(xiàn)隨時(shí)換節(jié)目的功能。
具體的例子,如你想給客戶一個(gè)折扣功能,但這種折扣是千變?nèi)f化的,你可以不要一下子寫(xiě)完。然后你要設(shè)計(jì)一個(gè)界面,規(guī)定所有的打折都要符合你的界面,比如給出商品的信息,返回打折后的價(jià)格。你可以用這個(gè)界面來(lái)設(shè)計(jì)你的主程序。這樣你的程序就有了很好的擴(kuò)展性,因?yàn)槟憧梢酝ㄟ^(guò)傳遞不同的折扣方法來(lái)改變你的程序。如果使用對(duì)象,就是策略模式,如果使用繼承,就是工廠方法模式。等一下。。
java中,接口可以怎么通俗的理解?接口,與,實(shí)現(xiàn)接口類(lèi),的關(guān)系?
Java只支持單一繼承,有很多不便。為了解決這個(gè)問(wèn)題,采用了接口方法,java支持多種實(shí)現(xiàn),即一個(gè)類(lèi)可以實(shí)現(xiàn)多個(gè)接口,同時(shí)可以繼承一個(gè)類(lèi)。如果實(shí)現(xiàn)了這個(gè)接口,就類(lèi)似于繼承了這個(gè)接口。接口中的方法是抽象的,沒(méi)有方法體。它的作用是讓子類(lèi)實(shí)現(xiàn)它。默認(rèn)情況下,這些方法在帶有修飾符publicstaticfinal的公共抽象接口中具有屬性,因此它們可以通過(guò)類(lèi)名傳遞。調(diào)用,或通過(guò)對(duì)象調(diào)用。此外,接口還為多態(tài)性提供了便利。