最好能講一個(gè)例子
熱心網(wǎng)友
1 interface的作用是讓使用inerface的人不知道它是怎么實(shí)現(xiàn)的,但調(diào)用這結(jié)方法就好使。就像是收?L臺(tái),它的方法就是收錢。你把錢給它,它給你零錢。你不用管它用的是電腦還是算盤。它也不想讓你知道。反正功能實(shí)現(xiàn)了。 2 當(dāng)你在使用inerface時(shí),一定是用的implements里的方法,而且經(jīng)常這么用。List l = new ArrayList() ; List是接口,ArrayList是它的實(shí)現(xiàn)。這后還很有可能有個(gè)方法是這樣的 public void m1(List l){。。。}。這里寫List是讓這個(gè)方法更通用些,只要是List 的實(shí)現(xiàn)就能用。就好比這個(gè)款臺(tái),臺(tái)子是一樣的,但錢可以不一樣??墒敲涝?,也可以是元寶。但它們都是“錢”的實(shí)現(xiàn),“錢”本身沒(méi)有意義。 3 implements 和 extends 。implements是向老師學(xué)習(xí),我可以拜很多的人為師,從而我就有了這些人的本領(lǐng),但我還是我,不過(guò)本事大了些;extends 就是認(rèn)爸爸。一個(gè)人就一個(gè)爸,同樣我有了爸爸的本領(lǐng),你可以替你爸去從軍,但不能替別的老頭子,我也不能再認(rèn)別的爸了,但可以認(rèn)老師,幾個(gè)都沒(méi)關(guān)系。這之間也許還有別的區(qū)別,不過(guò)我還沒(méi)遇到過(guò)。 還有一些,我也說(shuō)不來(lái)了。我還分不太清什么時(shí)候用接口或是抽象類,不過(guò)我用接口的情況多些。有人對(duì)我說(shuō),最好是一個(gè)類對(duì)應(yīng)一個(gè)接口,我還不理解它的意義有多大,不過(guò)大家都是這么寫的。換句話說(shuō),一個(gè)類好不要憑空就出來(lái),最差也要繼承個(gè)抽象類。這都是書本上的,記住了,但沒(méi)什么感覺(jué)。