Если на AS3 этого не сделать - будет тип *, или Object - он мало того, что не проеряется компилятором - еще и работает медленне
Но вообще в природе существует механизм выявления типов компилятором
Например, если в haXe напишешь

Код AS3:
var myClass_Provider=new myClass();
то тип переменной будет именно myClass и проверяться комилятором будет, и даже флеш-девелоп автокомплит покажет (не всегда правда, под хакс он слабо заточен)
Говорят в C# тоже что-то похожее добавили (объявление переменной с ключевым словом var и автоопределением типа)
Но есть случаи, когда тип писать нужно, например, чтобы обрезать до интерфейса/более общего типа:

Код AS3:
var myClass_Provider:IProvider = new myClass();