java中extends與implements區(qū)別
繼承和接口兩者間的區(qū)別有多種解釋?zhuān)嘈庞猩俨糠殖醪搅私獾臅r(shí)候有些困惑,在這里發(fā)表了個(gè)人理解的解釋?zhuān)绻隳芸吹枚蔷透昧,你已?jīng)是大神了請(qǐng)忽略這篇理解不完整的解釋吧!
首先,看看他兩個(gè)概念,跟其隨后是通熟易懂的口水話來(lái)解釋。
[extends:繼承類(lèi)]。我們定義了一個(gè)類(lèi),類(lèi)里面有方法體(是一些功能的實(shí)現(xiàn)),在另外的類(lèi)中有需求我們前面定義的類(lèi)里面的功能,那么可使用extends這個(gè)關(guān)鍵字來(lái)繼承前類(lèi)的功能。我們可將前面的那個(gè)類(lèi)稱(chēng)為父類(lèi),后面的那個(gè)類(lèi)稱(chēng)為子類(lèi),就像兒子繼承父親一些事物,如財(cái)產(chǎn)。表示為 子類(lèi) extends 父類(lèi)。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | /pic/code> class A{ /pic/code> int num=0; /pic/code> public A(int i){ /pic/code> System.out.println("aaaaaaaaaaaaaaaaaaa"); System.out.println("i= "+i); /pic/code> num=i; } } /pic/code> class B extends A{ int num=0; /pic/code> public B(){ /pic/code> super(10); System.out.println("bbbbbbbbbbbbbbbbbbbb"); /pic/code> System.out.println("num= "+num); /pic/code> System.out.println("super.num= "+super.num); } } /pic/code> public class C{ /pic/code> public static void main(String aa[]){ /pic/code> new B(); } } |
[implements:一般指實(shí)現(xiàn)接口]。一個(gè)類(lèi)實(shí)現(xiàn)接口類(lèi)時(shí)用的關(guān)鍵詞。Object implements Object 如java 中定義的接口Animal ,實(shí)現(xiàn)接口的類(lèi) 定義如下: public class Tiger implements Animal
{
}
【java中extends與implements區(qū)別】相關(guān)文章:
Java中定義與聲明的區(qū)別10-31
Java中的堆和棧的區(qū)別10-27
Java中hashmap和hashtable的區(qū)別12-02
java中l(wèi)ength和length()的區(qū)別09-29
java中String和StringBuffer的區(qū)別12-05
Java與Java web的區(qū)別01-30
java中i++和++i的區(qū)別03-13