Flash Lite 2 |
|||
| Guide de référence du langage ActionScript Flash Lite 2.x > Eléments du langage ActionScript > Instructions > Instruction static | |||
class someClassName{ static var name; static function name() { // Vos instructions ici } }
Remarque : Pour utiliser ce mot-clé, vous devez spécifier ActionScript 2.0 et Flash Player 6 ou une version plus récente dans l'onglet Flash de la boîte de dialogue Paramètres de publication de votre fichier FLA. Ce mot-clé n'est pris en charge que lorsqu'il est utilisé dans des fichiers de script externes, et non pas dans les scripts écrits dans le panneau Actions.
Spécifie qu'une variable ou une fonction n'est créée qu'une fois par classe et non pas créée dans chaque objet en fonction de cette classe.
Vous pouvez accéder à un membre de classe statique sans créer une occurrence de sa classe en utilisant la syntaxe someClassName.name. Si vous créez une occurrence de la classe, vous pouvez également accéder à un membre statique en utilisant l'occurrence, mais uniquement par le biais d'une fonction non statique qui accède au membre statique.
Ce mot-clé est réservé aux définitions de classe et ne permet pas de créer des définitions d'interface.
Disponibilité : ActionScript 2.0 ; Flash Lite 2.0
name:String - Nom de la variable ou de la fonction à spécifier en tant que statique.
L'exemple suivant présente l'utilisation du mot-clé static pour créer un compteur chargé de suivre le nombre d'occurrences de la classe créées. La variable numInstances étant statique, elle ne sera créée qu'une fois pour l'ensemble de la classe, pas pour chaque occurrence. Créez un nouveau fichier AS intitulé Users.as et entrez le code suivant :
class Users {
private static var numInstances:Number = 0;
function Users() {
numInstances++;
}
static function get instances():Number {
return numInstances;
}
}
Créez un document FLA ou AS dans le même répertoire, puis entrez le code ActionScript suivant dans l'image 1 du scénario :
trace(Users.instances); var user1:Users = new Users(); trace(Users.instances); var user2:Users = new Users(); trace(Users.instances);