可以理解為多繼承。
//交通工具類,擁有運輸功能
abstract class transportation
//自行車
class bicycle extends transportation
with twowheeltransportation, lowsafetyindex, bodyenergytransportation
// string safetyindex() => "low";
//// string powerunit() => "兩個輪子";
//// string energy() => "全靠腿登";
}//電單車
class motorcycle extends transportation
with twowheeltransportation, lowsafetyindex, gasolineenergytransportation
// string safetyindex() => "low";
//// string powerunit() => "兩個輪子";
//// string energy() => "汽油";
}//汽車
class car extends transportation
with
fourwheeltransportation,
middlesafetyindex,
gasolineenergytransportation
// string safetyindex() => "middle";
//// string powerunit() => "四個輪子";
//// string energy() => "汽油";
}//雙輪交通工具
class twowheeltransportation
//四輪交通工具,一般來說安全效能為中
class fourwheeltransportation
//安全指數中等的交通工具兒
class middlesafetyindex
//安全指數低的交通工具兒
class lowsafetyindex
//人力發動機
class bodyenergytransportation
//汽油能源交通工具
class gasolineenergytransportation
//四輪木製腳踏車
class woodencar extends car
// with lowsafetyindex, bodyenergytransportation
//implements lowsafetyindex, bodyenergytransportation
}列印:
自行車:
電單車:
汽車:四輪木製腳踏車:
順序問題:
void main()
//順序問題
//如果2個或多個超類擁有相同簽名的a方法,那麼子類會以繼承的最後乙個超類中的a方法為準。
//當然這是子類沒有重寫a方法的前提下,如果子類自己重寫了a方法則以本身的a方法為準
class a
class b
class p
class ab extends p with a, b {}
class ba extends p with b, a {}
class c extends p with b, a
class cc extends p with b implements a //這裡的implement只是表明要實現a的方法,這個時候具體實現是再b中mixin了具體實現
列印:
bac
b
dart變數型別詳解
1 三個單引號的作用 string str qijqowjdo 哈哈嘿嘿黑 print str 這樣使用三個單引號,輸出來換行 方便我們 而已哈 2 字串的拼接 string a 你好 string b dart print a b 輸出 你好 dart 你可以理解為 可以直接去引用變數 另外一種方...
Dart語言學習 十四 Dart泛型
什麼是泛型?通俗理解 泛型就是解決 類 介面 方法的復用性 以及對不特定資料型別的支援 型別校驗 如下 只能返回string型別的資料string getdata string value 如下 同時支援返回 string型別 和int型別 但是這麼些造成 冗餘string getdata1 str...
Dart語言學習 三 Dart數值型
數值型有num,int,double num a 10 a 12.5 print a print a.runtimetype int b 20 b 20.5 print b print b.runtimetype double c 10.5 c 30 print c print c.runtimet...