User Guide
dynamic 147
dynamic
Availability
Flash Player 6.
Usage
dynamic class className [ extends superClass ]
[ implements interfaceName [, interfaceName... ] ]
{
// class definition here
}
Description
Keyword; specifies that objects based on the specified class can add and access dynamic properties
at runtime.
Type checking on dynamic classes is less strict than type checking on nondynamic classes, because
members accessed inside the class definition and on class instances are not compared with those
defined in the class scope. Class member functions, however, can still be type checked for return
type and parameter types.
Subclasses of dynamic classes are also dynamic.
For more information, see “Creating dynamic classes” on page 56.
Example
In the following example, class Person2 has not yet been marked as dynamic, so calling an
undeclared function on it generates an error at compile time:
class Person2 {
var name:String;
var age:Number;
function Person2(param_name:String, param_age:Number) {
trace ("anything");
this.name = param_name;
this.age = param_age;
}
}
In a FLA or AS file that’s in the same directory, add the following ActionScript:
// Before dynamic is added
var craig:Person2 = new Person2("Craiggers", 32);
for (i in craig) {
trace("craig."+i +" = "+ craig[i]);
}
/* output:
craig.age = 32
craig.name = Craiggers
*/
CHAPTER 5
ActionScript Core Language Elements