我簡單說明一下我的看法
1 介面是核心,其定義了要做的事情,包含了許多的方法,但沒有定義這些方法應該如何做。
2 如果許多類實現了某個介面,那麼每個都要用**實現那些方法
3 如果某一些類的實現有共通之處,則可以抽象出來乙個抽象類,讓抽象類實現介面的公用的**,而那些個性化的方法則由各個子類去實現。
所以,抽象類是為了簡化介面的實現,他不僅提供了公共方法的實現,讓你可以快速開發,又允許你的類完全可以自己實現所有的方法,不會出現緊耦合的問題。
應用場合很簡單了
1 優先定義介面
2 如果有多個介面實現有公用的部分,則使用抽象類,然後整合它。
JAVA抽象類和介面的區別,使用場景
抽象層次從高到底 介面 抽象類 具體實現類 1.介面中定義了一些方法,但是沒有實現。2.在介面的具體實現類中,如果有共同的實現 部分 可用乙個抽象類來實現這些共同的部分 個性化的實現交給具體實現類 子類 完成。3.抽象類提供了公共方法的實現 使用場景 包含抽象方法的類即為抽象類,當乙個抽象類中所有的...
抽象類和介面的區別以及使用場景
兩者都是抽象類,都不能例項化。inte ce實現類及abstrct class的子類都必須要實現已經宣告的抽象方法。inte ce需要實現,要用implements,而abstract class需要繼承,要用extends。乙個類可以實現多個inte ce,但乙個類只能繼承乙個abstract c...
抽象類和介面的區別以及使用場景
兩者都是抽象類,都不能例項化。inte ce實現類及abstrct class的子類都必須要實現已經宣告的抽象方法。inte ce需要實現,要用implements,而abstract class需要繼承,要用extends。乙個類可以實現多個inte ce,但乙個類只能繼承乙個abstract c...