更新時間:2021-05-19 11:25:40 來源:動力節(jié)點 瀏覽1128次
抽象類必須用 abstract 修飾,子類必須實現(xiàn)抽象類中的抽象方法,如果有未實現(xiàn)的,那么子類也必須用 abstract 修飾。抽象類默認(rèn)的權(quán)限修飾符為 public,可以定義為 public 或 procted,如果定義為 private,那么子類則無法繼承。抽象類不能創(chuàng)建對象
1.抽象類必須用public、procted 修飾(如果為private修飾,那么子類則無法繼承,也就無法實現(xiàn)其抽象方法)。默認(rèn)缺省為 public
2.抽象類無法創(chuàng)建對象
3.如果一個子類繼承抽象類,那么必須實現(xiàn)其所有的抽象方法。如果有未實現(xiàn)的抽象方法,那么必須定義為 abstract
接口中的變量隱式的使用 public static final 修飾,并且需要給出初始值。方法隱式的使用 public abstract 修飾(并且只能是 public ,如果是 private,procted,那么就編譯報錯)。接口中的方法默認(rèn)不能有具體的實現(xiàn)(JDK1.8開始可以有默認(rèn)的實現(xiàn))
1.抽象類只能繼承一次,但是可以實現(xiàn)多個接口
2.接口和抽象類必須實現(xiàn)其中所有的方法,抽象類中如果有未實現(xiàn)的抽象方法,那么子類也需要定義為抽象類。抽象類中可以有非抽象的方法
3.接口中的變量必須用 public static final 修飾,并且需要給出初始值。所以實現(xiàn)類不能重新定義,也不能改變其值。
4.接口中的方法默認(rèn)是 public abstract,也只能是這個類型。不能是 static,接口中的方法也不允許子類覆寫,抽象類中允許有static 的方法
以上就是動力節(jié)點小編介紹的"Java中接口和抽象類的區(qū)別",希望對大家有幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為您服務(wù)。