当矢量被像这样投射的时候...
var v1:Vector.<String> = new Vector.<String>();
v1.push("foo");
var v2:Vector.<Object> = Vector.<Object>(v1)
v1.push("bar");
trace(v1); //foo,bar
trace(v2); //foo
... 矢量的复制件被创建, 正如您在微量输出中看到的 。
但是当你把第3行改成...
var v2:Vector.<*> = Vector.<*>(v1)
...... 没有创建副本, v1 和 v2 都指向同一个对象, 微量输出将同时为“ foo, bar ” 。
为什么 难道不该有一贯的行为吗