User Guide

New object-oriented programming model 21
Debugging changes
This section describes changes that improve your ability to debug your scripts.
Output window changed to Output panel You can now move and dock the Output panel in
the same way as any other panel in Flash.
Improved error reporting at compile time In addition to providing more robust exception
handling, ActionScript 2.0 provides several new compile-time errors. For more information, see
Appendix A, “Error Messages,” on page 305.
Improved exception handling The Error class and the throw and try..catch..finally
commands let you implement more robust exception handling.
New object-oriented programming model
The ActionScript language has grown and developed since its introduction several years ago. With
each new release of Flash, additional keywords, objects, methods, and other language elements
have been added to the language. However, unlike earlier releases of Flash, Flash MX 2004 and
Flash MX Professional 2004 introduce several new language elements that implement object-
oriented programming in a more standard way than before. Because these language elements
represent a significant enhancement to the core ActionScript language, they represent a new
version of ActionScript: ActionScript 2.0.
ActionScript 2.0 is not a new language. Rather, it comprises a core set of language elements that
make it easier to develop object-oriented programs. With the introduction of keywords such as
class, interface, extends, and implements, ActionScript syntax is now easier to learn for
programmers who are familiar with other languages. New programmers can learn more standard
terminology that they can apply to other object-oriented languages they might study in the
future.
The object-oriented programming (OOP) features in ActionScript 2.0 are based on the
ECMAScript 4 Draft Proposal currently in development by ECMA TC39-TG1 (see
www.mozilla.org/js/language/es4/index.html). Because the ECMA-4 proposal is not yet a
standard, and because it is still changing, ActionScript 2.0 does not conform exactly to this
specification.
ActionScript 2.0 supports all the standard elements of the ActionScript language; it lets you write
scripts that more closely adhere to standards used in other object-oriented languages, such as Java.
ActionScript 2.0 should be of interest primarily to intermediate or advanced Flash developers
who are building applications that require the implementation of classes and subclasses.
ActionScript 2.0 also lets you declare the object type of a variable when you create it (see “Strict
data typing” on page 41) and provides significantly improved compiler errors (see Appendix A,
“Error Messages,” on page 305).
The following list shows the language elements that are new in ActionScript 2.0:
class
extends
implements