クラスのキャスト方法は、2種類あります。
()の演算子とas演算子があり、()を使うcast1のキャストは、キャスト時に強制型変換を行います。
上記例の場合、数字からStringへは強制型変換が可能なのでエラーにはなりませんが、型変換が失敗した場合(例えばcast11のように全く違う型にキャストした場合)、例外が発生します。
case2はas演算子を使用するキャストで、キャスト時に型が異なる場合、例外は発生せず、nullを返します。
var cast1:String = String(1); var cast2:String = 1 as String; Alert.show("case1="+cast1+" case2="+cast2); var cast11:Alert = Alert(1); //これは実行時に型キャスト例外発生 var cast22:Alert = 1 as Alert //これはcast22にnullが入る
上記例だと、Alertには "case1=1 case2=null"と表示されることになります。