ActionScriptで動的なインスタンス生成を行う

クラス名をもらって、そのクラス名から動的にインスタンスを生成したいときに、flash.utils.getDefinitionByNameが使えます。
引数に指定したクラス名から、クラスの参照を取得することができるので、そこからインスタンスを生成できます。

// 戻り値がObjectなので、Classでキャストしておく
var myClass:Class = flash.utils.getDefinitionByName("Hoge") as Class;
var myInstance:Object = new myClass();


たとえば、インタフェースが統一されているけど、その実装クラスは実行時にしか判明しない場合、以下のようにして動的なインスタンス生成ができます。

public function createCommand(className:String):ICommand
{
    var command:Class = flash.utils.getDefinitionByName(className) as Class;
    return new command as ICommand;
}