Цитата:
Сообщение от filepark
понятно, что если бы самого начала zzz был TestClass, всё было бы ок. Но он сначала Спрайт, а потом должен стать TestClass. Каждый раз писать (zzz as TestClass) тоже не дело. Мне нужно чтобы переменная сменила свой тип раз и навсегда. Я и пытался это сделать - TestClass(zzz); У меня несколько классов:TestClass1, TestClass2, TestClass3 ... и объектом какого класса станет zzz заранее незвестно.
открыв Мука на стр.191 мы увидим:
var meal:Food = new Apple();
Apple(meal);
теперь типом meal стал Apple, я лишь повторил
|
тип переменной zzz вы не сможете поменять, она строго типизирована.
введите локальную переменную и её делайте нужного вам типа например так:

Код AS3:
package {
import flash.display.*;
public class MainClass extends Sprite {
private var zzz:Sprite;
public function MainClass() {
var yyy:TestClass= new TestClass();
zzz=yyy;
yyy.myMethod();
addChild(yyy);
}
}
}