dart是谷歌開發的編程語言,是flutter架構的基礎,感覺語言上很靠近面向對象Java語言,由於dart語言所有數據類型都是基於object,所以dart也是面向對象編程(面向百度(不是))
格式(以User類為例):
var customer = new User.initiate();
使用老師的簡單例子:
一個簡單的User類:
class User { String name; int age; //類定義中所有的變量都會隱式的定義setter方法, //針對非空的變量會額外地增加getter方法 //constructor User(this.name,this.age); //named constructor用於從另一個類或現有數據塊中快速構造實例對象 User.fromJson(Map json) { name = json['name']; age = json['age']; } // 一個帶有初始化列表的命名構造方法 User.initiate() : name = 'Bob', age = 34; String toString() { return "name: "+this.name+"\nage: "+this.age.toString(); } } main() { User user = new User('Tom', 31); print(user.name); print(user.age); user.name = '張三'; //相當於使用了name的setter方法 user.age = 20; print(user.name); print(user.age); Map Jim = {'name':'Jim', 'age':27}; User user2 = new User.fromJson(Jim); print(user2.toString()); User user3 = new User.initiate(); print(user3.toString()); }
第一次接觸JSON,這種格式在Javascript中很常見,據了解是類似於XML的標記性集合,但本實例沒有實際使用JSON。
其中Map是Java中的鍵值對數據集合。在Dart語言中也適用
要使用Map文字聲明Map,需要將鍵值對括在一對花括號 {}中 。
這是它的語法
var identifier = { key1:value1, key2:value2 [,…..,key_n:value_n] }
JSON
1、JSONObject(一般叫做JSON)指的是JSON對象,表現為鍵值對(key:value),一個key對應一個value,key不能重復。可以將JSON理解為一種特殊的字符串,只不過是用了特定的符號進行了標注而已。
2、形式:{“key” : “value”},key和value都必須用雙引號引起來。例如: {“name”: “Michael”}
3、創建格式:JSONObject json = new JSONObject();
Map
1、Map也是鍵值對,不過表現為{key=value},並且key和value不需要用雙引號引起來。例如:{name=Michael,age=21}。
2、Map的key可以為對象,JSON的key只能為string。JSON相當於是一種特殊的Map。
3、創建格式:Map map = new HashMap();
JSONArray
1、JSONArray指的是JSON數組,用[]表示,里面可以套上JSON,例如:[ {“name”: “Michael”}, {“name”: “Jake”}]。
2、創建格式:JSONArray jsonArray = new JSONArray();
ArrayList
1、List是一個接口,ArrayList是List接口的一個實現類。例如:[Michael,Jake]。
2、創建格式:List list = new ArrayList();
如果有過Java面向對象語言學習基礎的同學,學起來會輕松很多
