Mega Code Archive

 
Categories / Flash ActionScript / Statement
 

Catch Blocks Example

package {     import flash.display.Sprite;     public class Main extends Sprite     {         public function Main()         {             try             {                 var n:int = sumSomeNumbers();                 trace(n);             } catch (e:UnrelatedError) {                 trace("something unrelated happened.");             } catch (e:DispleasingNumberError) {                 trace("somewhere, a number is displeasing.");             } catch (e:Error) {                 trace("something bad happened");             }         }         protected function sumSomeNumbers():int         {             var sum:int = 0;             for (var i:int = 0; i < 10; i++)             {                 sum += someNumber();             }             return sum;         }         protected function someNumber():int         {             var n:int = Math.round(Math.random() * 10);             if (n < 2)             {                 throw new PatheticallySmallNumberError();             }             return n;         }     } } class DispleasingNumberError extends Error {} class PatheticallySmallNumberError extends DispleasingNumberError {} class UnrelatedError extends Error {}