dart中可以直接在一個文件里聲明一個變量,這在其他語言中並不常見,比如c#語言只有類型才可以在命名空間下定義,變量必須放在類里聲明
所以dart這點特性類似於js
今天就來討論這個公共變量的作用范圍,既然是全局性的變量,假如兩個文件引用了這個變量,那么任意一個地方修改了這個變量,這個變量在其他地方也是改變的
驗證:
1.在a文件里聲明一個List
List<String> names= ['a','b'];
2.在b文件里定義一個類,然后一個屬性引用a文件里的變量
import 'common.dart';
class Util
{
List<String> utilNames=names;
}
3.c文件里修改a文件的變量,然后調用b的類變量
import 'common.dart';
import 'util.dart';
main() {
Util util=Util();
names.add('c');
print(util.utilNames);
}
發現值是發生了變化了的
[a, b, c]