繼承:如果多個類別的某個部分的功能相同,那麼可以抽像出一個類別出來,把他們的相同部分都放到父類別裡,讓他們都繼承這個類。
實作:如果多個類別處理的目標是一樣的,但是處理的方法方式不同,那麼就定義一個接口,也就是一個標準,讓他們的實作這個接口,各自實現自己具體的處理方法來處理那個目標。
兩者區別:
1、修飾不同
不同的修飾修飾;實作:implements,繼承:extends;
2 、數量不同
Java只支援「介面」的多繼承,不支援「類別「」的多繼承;而繼承在java中具有單根性,子類別只能繼承一個父類別。
總結為:單一繼承,多重實作。
3、屬性不同
在介面中只能定義全域常數(static final),和無實作的方法;而在繼承中可以定義屬性方法,變數,常數等。
4、呼叫不同
某個介面被類別實作時,在類別中一定要實作介面中的抽象方法;而繼承想呼叫那個方法就呼叫那個方法。
總結:
介面是:對功能的描述(方法/行為),介面傳達的意思是:擁有某種功能,能幹嘛,例如:Serializable代表可序列化的。
繼承是:什麼是一種什麼,繼承傳達的意思是:is-a,例如:貓是一個動物,貓就是動物的子類別。
推薦教學:Java教學
以上是java中繼承與實作的區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!