O'Reilly logo

Essential ActionScript 3.0 by Colin Moock

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 8. Datatypes and Type Checking

So far, we've developed our virtual zoo program without making a single coding error. Error-free development happens in training courses and books—and nowhere else. In real-world development, programmers make errors all the time. For example, when invoking eat( ) on a VirtualPet object, a programmer might make a typographical error, such as the following (notice the extra "t"):

pet.eatt(new Sushi())

Or, a programmer might make a mistaken assumption about the capabilities of an object. For example, a programmer might mistakenly attempt to invoke a method named jump( ) on a VirtualPet object, even though VirtualPet defines no such method:

pet.jump()

In both the preceding cases, when the program runs in the debugger version of a Flash runtime, ActionScript will generate a reference error, indicating that the program attempted to reference a variable or method that doesn't exist.

Tip

Errors that occur at runtime are known as exceptions. We'll study exceptions and the techniques for handling them in Chapter 13.

When an error occurs in a program you're writing, you should be happy. Errors indicate the precise location and cause of something in your program that would likely cause a malfunction without your attention. For example, in response to the earlier "eatt( )" typo, the debugger version of a Flash runtime would display an alert dialog containing the following message:

ReferenceError: Error #1069: Property eatt not found on zoo.VirtualPet and there ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required