4
我一直看到引用像下面的示例來_internal:_internal的語義是什麼?
class Symbol {
final String name;
static Map<String, Symbol> _cache;
factory Symbol(String name) {
if (_cache == null) {
_cache = {};
}
if (_cache.containsKey(name)) {
return _cache[name];
} else {
final symbol = new Symbol._internal(name);
_cache[name] = symbol;
return symbol;
}
}
Symbol._internal(this.name);
}
我從它的私人訪問的構造函數的代碼聚集。最後一行Symbol._internal(this.name);
似乎有點令人困惑,因爲它似乎是類體內的聲明,而不是方法體內的聲明,導致我相信它實際上是沒有方法體的內部構造函數定義。
我的假設是否正確?
再次感謝拉爾斯。這有很大幫助。還有一些我不完全理解的東西,比如,構造函數可以有一個方法體呢?定義爲final的類成員只能在構造函數的參數列表中設置,而不能在構造函數體中設置?這些仍然讓我感到困惑。 –