Потому что присваивания имеют значение в Actionscript, что делает этот синтаксис легальным, и они не имеют значения в Java, что делает его нет. Разница заключается в том, что, несмотря на недавние Java-изации, Actionscript является производным от ECMAScript. Другие последствия этого дизайна - способность делать заявления как это:
var foo:Number = 0;
var bar:Number = 0;
foo = bar = 2;
assertEquals(2, foo);
assertEquals(2, bar);
IMO, это лучшее поведение, которое у него может быть - оно не нарушает совместимость со старыми версиями Actionscript, и не удаляет языковые функциональные возможности с целью ручного хранения, но привлекает внимание к общей ошибке пользователя.