-
枚舉
枚舉是一種有窮序列集的數據類型
使用關鍵字enum定義一個枚舉
常用于代替常量,控制語句等
dart枚舉類型
index從0開始,依次累加
不能指定原始值
不能添加方法
查看全部 -
操作符覆寫
覆寫操作符需要在類中定義
查看全部 -
Mixins
mixins類似多繼承,是在多類繼承中重用一個類代碼的方法
必須使用extends先繼承,然后再多繼承,使用關鍵字with
如果在每個方法中都有相同的方法,那么執行在mixins的最后一個方法
作為mixins的類不能有顯示聲明構造方法
查看全部 -
接口
類和接口是統一的,類就是接口
每個類都隱式的定義了一個包含所有實例成員的接口
使用關鍵字implements,且所有的都需要重新復寫
如果是復用已有類的實現,使用繼承(extends)
如果只是使用已有類的外在行為,使用接口(implements)
查看全部 -
抽象類:
抽象類使用abstract表示,不能直接實例化
抽象方法不用abstract修飾,無實現(與java不同)
抽象類可以沒有抽象方法
有抽象方法的類一定得聲明為抽象類
查看全部 -
繼承構造方法
子類構造方法默認調用父類無名構造方法
父類沒有無名無參構造方法,則需要顯示調用父類構造方法
構造方法參數后使用 : 顯示調用父類構造方法
執行順序
父類構造方法在子類構造方法體執行前調用? ? ??
查看全部 -
繼承
使用extends 繼承一個類
子類會繼承父類可見屬性和方法,不會繼承構造方法
子類可以復寫父類的方法,getter和setter
單繼承,多態性
super相當于子類中調用父類,相當于之前的this,表示當前對象
查看全部 -
面向對象拓展
繼承 繼承中的構造方法
抽象類
接口
Mixins,操作符的覆寫
查看全部 -
對象call方法
如果類實現了call()方法,則該類的對象可以作為方法使用
查看全部 -
對象操作符
條件成員訪問? “?.”前面為空不往后執行,不為空往后執行
用于判斷對象是否為空
類型轉換 as (后面跟類型名稱)
是否指定類型 is, is!
級聯操作 ..
查看全部 -
靜態成員
使用static關鍵字來實現類級別的變量和函數
靜態成員不能訪問非靜態成員,非靜態成員可以訪問靜態成員
類型中的常量使用static const聲明
查看全部 -
初始化列表
初始化列表會在構造方法體執行之前執行
使用逗號分隔初始化表達式
初始化列表常用于設置final變量的值
查看全部 -
工廠構造方法
工廠構造方法類似于設計模式中的工廠模式
在構建方法前添加關鍵字factory實現一個工廠構造方法
在工廠構造方法中可返回對象
查看全部 -
常量構造方法
如果類是不可變狀態,可以把對象定義為編譯時常量
使用const聲明構造方法,并且所有變量都為final
使用const聲明對象,可以省略
查看全部 -
構造方法
如果沒有自定義構造方法,則會有個默認構造方法
如果存在自定義構造方法,則默認構造方法無效
構造方法不能重載
命名構造方法
使用命名構造方法,可以實現多個構造方法
使用類名.方法的形式實現
查看全部
舉報