課程
/移動開發(fā)
/Android
/Flutter開發(fā)第一步-Dart編程語言入門
那dart中的接口到底是什么場景使用呢?它是為了解決什么而出現(xiàn)的?
2019-06-20
源自:Flutter開發(fā)第一步-Dart編程語言入門 7-5
正在回答
假設有兩個類,A和B,如果B是A的擴展,A的屬性和方法,B都有,那么使用B繼承(extends)A就好。
但是如果A和B只是有一部分交集,有幾個共同的屬性和方法,但有分別有各自特有的屬性和方法,那么用繼承就不合適了,這時就可以使用接口,把共同的這一部分屬性和方法寫在接口C 里,讓A和B分別接入(implements)接口。
也可以使A和B分別繼承C,這個視具體場景而定,一般而言,如果A和B的大部分屬性和屬性都可以放在C里從C獲取,那么A和B就像C的子類,更適合用繼承;如果A和B只是小部分屬性和方法相同,那么更適合把這小部分屬性和方法抽出來作為一個接口使用,這樣邏輯上更通暢。
目的都是為了使代碼更精煉、可讀性更強、減少代碼重復……
JoymingChen 提問者
感謝回答,講解非常細致,已經(jīng)理解了,謝謝?這么看起來,dart在設計上還是花了很多心思的
舉報
Flutter開發(fā)語言-Dart編程入門,為大家上手及進階Flutter打下堅實基礎(chǔ)。
1 回答dart語言,String乘號問題
2 回答dart版本問題。
1 回答dart 閉包返回值問題
1 回答dart算是動態(tài)類型語言吧, 因為在聲明變量的時候可以不指定變量類型, 是嗎?
1 回答Dart添加 不成功
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2019-07-05
假設有兩個類,A和B,如果B是A的擴展,A的屬性和方法,B都有,那么使用B繼承(extends)A就好。
但是如果A和B只是有一部分交集,有幾個共同的屬性和方法,但有分別有各自特有的屬性和方法,那么用繼承就不合適了,這時就可以使用接口,把共同的這一部分屬性和方法寫在接口C 里,讓A和B分別接入(implements)接口。
也可以使A和B分別繼承C,這個視具體場景而定,一般而言,如果A和B的大部分屬性和屬性都可以放在C里從C獲取,那么A和B就像C的子類,更適合用繼承;如果A和B只是小部分屬性和方法相同,那么更適合把這小部分屬性和方法抽出來作為一個接口使用,這樣邏輯上更通暢。
目的都是為了使代碼更精煉、可讀性更強、減少代碼重復……
2019-07-05
感謝回答,講解非常細致,已經(jīng)理解了,謝謝?這么看起來,dart在設計上還是花了很多心思的