參考資料:
https://www.itying.com/goods-1120.html
https://github.com/lijinhua/dartstudy.git
dart編程語(yǔ)言
dart官網(wǎng)
下面主要是記錄一下與java的區(qū)別
1宙帝、dart聲明變量可以使用var,也可以使用具體的類(lèi)型
2、dart常量區(qū)別
Dart定義常量用 final 和 const 關(guān)鍵字來(lái)修飾符
const值不變难衰,一開(kāi)始就得賦值
?final 可以開(kāi)始不賦值捏卓,但只能賦值一次
final 不僅有const的編譯時(shí)常量的特性,最重要的它是運(yùn)行時(shí)常量否纬,并且final是惰性初始化吕晌,即在運(yùn)行時(shí)第一次使用前才初始化
?常量是永遠(yuǎn)不改量的量,用final或const修飾它临燃,而不是使用var或其他變量類(lèi)型
3睛驳、關(guān)于List與Map區(qū)別
4烙心、操作符is類(lèi)似于java中的instanceof
5、乏沸?淫茵?運(yùn)算符
int n1;
int n2 = n1 ??10;? // 如果n1為空,則將10賦值給n2屎蜓,否則將n1的值賦值給n2
6痘昌、dart的函數(shù)有一些與java有區(qū)別
6.1:定義一個(gè)帶可選參數(shù)的方法,使用[],
例如:String getUserInfo(String name, [int age])
調(diào)用:
print(getUserInfo('沙和尚', 10));
print(getUserInfo('沙和尚'));
6.2炬转、定義一個(gè)帶默認(rèn)參數(shù)的方法
String getUserInfo2(String name, [String sex ='男', int age])
調(diào)用方式:
print(getUserInfo2('嫦娥', '女', 68));
print(getUserInfo2('嫦娥', '女'));
print(getUserInfo2('嫦娥'));
6.3辆苔、定義一個(gè)命名參數(shù)的方法
getUserInfo3(String name, {String sex ='男', int age})
調(diào)用:
print(getUserInfo3('玉兔'));
print(getUserInfo3('玉兔', sex:'女'));
print(getUserInfo3('玉兔', sex:'女', age:99));
6.4、實(shí)現(xiàn)一個(gè)把 方法 當(dāng)做 參數(shù) 的方法
fn6(fn) {
fn();
}
fn6_1() {
print('我是一個(gè)方法扼劈!');
}
fn6(fn6_1);
7驻啤、Dart箭頭函數(shù)
如果函數(shù)體里面里面只有一句話,那么這可以寫(xiě)這樣
bool isEvenNumber(int n) {
return n %2 ==0 ?true :false;
}
bool isEvenNumber(int n) =>n %2 ==0 ?true :false;
8荐吵、類(lèi)的區(qū)別
8.1骑冗、構(gòu)造方法
class Person{
String name;
? int age;
? //8、2 默認(rèn)構(gòu)造函數(shù)的簡(jiǎn)寫(xiě)
? Person(this.name,this.age);
// 上面相當(dāng)于
// this.name = name
// this.age= age
//?命名構(gòu)造函數(shù)
Person.setInfo(String name,int age){
this.name=name;
? ? this.age=age;
? }
void printInfo(){
print("${this.name}----${this.age}");
? }
}
8.3先煎、私有方法和屬性和類(lèi)都是在前面加下劃線_
8.4贼涩、get與set修飾
class Rect{
numheight;
? numwidth;
? Rect(this.height,this.width);
? get area{
return this.height*this.width;
? }
set areaHeight(value){
this.height=value;
? }
}
8.5、Dart中我們也可以在構(gòu)造函數(shù)體運(yùn)行之前初始化實(shí)例變量
9薯蝎、drat的mixins
class C2 extends Person with B, A
可以使用with
檢驗(yàn)?zāi)闶欠裾娴恼莆眨?/p>
1遥倦、常量用 final 和 const
2、List與Map 在java上定義的區(qū)別
3占锯、操作符is是什么
4袒哥、?消略?運(yùn)算符是什么作用
5堡称、函數(shù)中參數(shù)[]是什么作用
6、函數(shù)中的聲明為{}是什么作用
7艺演、函數(shù)的參數(shù)可以傳函數(shù)嗎
8却紧、什么是Dart箭頭函數(shù)
9、類(lèi)的構(gòu)造方法初始化參數(shù)
10胎撤、命名構(gòu)造函數(shù)寫(xiě)法
11晓殊、私有方法和屬性和類(lèi)怎么寫(xiě)
12、get與set修飾
13哩照、Dart構(gòu)造函數(shù)體運(yùn)行之前初始化實(shí)例變量寫(xiě)法
14挺物、drat的mixins是什么
其他的一些知識(shí):
dart的異步編譯的還需要總結(jié)stream