Catch Blocks Example : try catch « Statement « Flash / Flex / ActionScript






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 {}

        








Related examples in the same category

1.Working with Basic try/catch Statements
2.Multiple throw statements and multiple catch statements
3.Using return in try, after throw
4.Using return in catch
5.Catching Errors Generated by Flash