Question

Est-ce que quelqu'un sait quelque chose sur « World » étant réservé ou construit en classe avec ce nom? lorsque je tente de construire la classe mondiale ai créé il lance erreur de compilation:

1136: Incorrect number of arguments.  Expected 2.

Mais j'ai des millions de fois vérifié, il n'y a aucun argument du tout prévu, tout nommage des paquets, types de variables .. tout est correct, mais il jette cette erreur stupide. : / Essayez-le sur votre propre et vous verrez qu'il fait .. ou je suis stupide?

Lorsque je tente d'appeler la fonction init dans la classe mondiale, il jette celui-ci:

1061: Call to a possibly undefined method init through a reference with static type World.

Grr ..

Était-ce utile?

La solution

J'ai eu ce même problème. Je pense qu'il est réservé au FlashPlayer 10 (éventuellement 10,1, mais ne peut pas être sûr). Je devais travailler autour d'elle en utilisant mon nom complet du package lors du référencement de ma classe mondiale.

var myWorld:com.foo.World = new com.foo.World();

laid, mais ça marche!

Autres conseils

Vous devez avoir quelque part une autre classe appelée mondiale dans votre chemin source. Regardez vos importations.

Entrez le chemin complet du package Si nécessaire pour éviter toute confusion avec une autre classe mondiale ailleurs:

var w:my.package.World = new my.package.World();

Un couple d'autres possibilités:

Utilisez-vous Flex / FlashBuilder, et l'importation d'un SWC? Ceux-ci peuvent exposer les classes sans révéler le code source.

Ou compilez-vous d'un FLA? Dans ce cas, il peut y avoir une bibliothèque de symboles exporter vers une classe ActionScript dont les conflits nom avec le vôtre.

Une autre possibilité est que le compilateur Flash que vous utilisez (si FlashPro ou FlashBuilder) a mis en cache mal une définition de classe créée plus tôt. Je l'ai rencontré ce bug quelques fois auparavant. Essayez de faire un projet / Clean (en FlashBuilder) ou, si vous êtes désespéré, la création d'un nouveau projet.

Je pense que vous devriez vérifier les paramètres qui sont nécessaires dans le constructeur et les rendre en option en passant = null ou quelque chose au constructeur fonction.

Cette « erreur » peut se produire lorsque vous placez un symbole de votre bibliothèque qui a des paramètres requis dans le constructeur.

package com.myworld
{
    public class World
    {
        public function World(parameter1:int = null, parameter2:String = null ) 
        {

        }
    }
}

est un étirement, mais essayez de supprimer vos fichiers ASO (Contrôle> Supprimer fichiers ASO) et recompiler.

si cela ne fonctionne pas la seule chose que je suggère est de reconstruire votre projet, tester ce problème chaque fois que vous importez un ou un groupe de classes. cette approche devrait vous garantir de trouver au moins où le problème est originaire.

la classe de document suivant compile et exécute tout à fait bien pour moi dans Adobe Flash CS5 ciblant Flash Player 10.1.53.64 (10.1):

package
{
import flash.display.Sprite;
import flash.events.Event;

public class World extends Sprite
    {
    public function World()
        {
        addEventListener(Event.ADDED_TO_STAGE, init);
        }

    private function init(evt:Event):void
        {
        removeEventListener(Event.ADDED_TO_STAGE, init);
        trace("World Document Added To Stage");
        }
    }
}

Je viens de vérifier moi-même, même il était un ancien poste qui a encore reçu de réponse. La raison en est que je trouve ce poste en raison d'une recherche sur une liste de mots-clés réservés dans AS3.

Le "Monde" Mot-clé n'est pas réservé :) Oooops ...

Voici la liste que je trouve à ce jour avec des mots réservés / mots-clés dans AS3: Si, vous modifiez cette liste, s'il vous plaît laisser un commentaire / avec des sources ... THX Parfois, le même mot-clé peut apparaître deux fois dans la liste sous différentes catégories ...

0   :   abstract        (future keyword)
1   :   as              (reserved keyword)
2   :   boolean         (future keyword)
3   :   break           (reserved keyword)
4   :   byte            (future keyword)
5   :   case            (reserved keyword)
6   :   cast            (future keyword)
7   :   catch           (reserved keyword)
8   :   char            (future keyword)
9   :   class           (reserved keyword)
10  :   const           (reserved keyword)
11  :   continue        (reserved keyword)
12  :   debugger        (future keyword)
13  :   default         (reserved keyword)
14  :   delete          (reserved keyword)
15  :   do              (reserved keyword)
16  :   double          (future keyword)
17  :   dynamic         (syntactic keyword)
18  :   each            (syntactic keyword)
19  :   else            (reserved keyword)
20  :   enum            (future keyword)
21  :   export          (future keyword)
22  :   extends         (reserved keyword)
23  :   false           (reserved keyword)
24  :   final           (syntactic keyword)
25  :   finally         (reserved keyword)
26  :   float           (future keyword)
27  :   for             (reserved keyword)
28  :   function        (reserved keyword)
29  :   get             (syntactic keyword)
30  :   goto            (future keyword)
31  :   if              (reserved keyword)
32  :   implements      (reserved keyword)
33  :   import          (reserved keyword)
34  :   in              (reserved keyword)
35  :   include         (syntactic keyword)
36  :   instanceof      (reserved keyword)
37  :   interface       (reserved keyword)
38  :   internal        (reserved keyword)
39  :   intrinsic       (future keyword)
40  :   is              (reserved keyword)
41  :   long            (future keyword)
42  :   namespace       (syntactic keyword)
43  :   native          (reserved keyword)
44  :   native          (syntactic keyword)
45  :   new             (reserved keyword)
46  :   null            (reserved keyword)
47  :   override        (syntactic keyword)
48  :   package         (reserved keyword)
49  :   private         (reserved keyword)
50  :   protected       (reserved keyword)
51  :   prototype       (future keyword)
52  :   public          (reserved keyword)
53  :   return          (reserved keyword)
54  :   set             (syntactic keyword)
55  :   short           (future keyword)
56  :   static          (syntactic keyword)
57  :   super           (reserved keyword)
58  :   switch          (reserved keyword)
59  :   synchronized    (future keyword)
60  :   this            (reserved keyword)
61  :   throw           (reserved keyword)
62  :   throws          (future keyword)
63  :   to              (future keyword)
64  :   to              (reserved keyword)
65  :   transient       (future keyword)
66  :   true            (reserved keyword)
67  :   try             (reserved keyword)
68  :   type            (future keyword)
69  :   typeof          (reserved keyword)
70  :   use             (reserved keyword)
71  :   var             (reserved keyword)
72  :   virtual         (future keyword)
73  :   void            (reserved keyword)
74  :   volatile        (future keyword)
75  :   while           (reserved keyword)
76  :   with            (reserved keyword)

Voici les 3 tableaux de mots-clés:

private static var reserved:Array = [
                          "as","break","case","catch","class","const","continue","default","delete",
                          "do","else","extends","false","finally","for","function","if","implements",
                          "import","in","instanceof","interface","internal","is","native","new","null",
                          "package","private","protected","public","return","super","switch","this",
                          "throw","to","true","try","typeof","use","var","void","while","with"
                          ];
private static var syntactic:Array = [
                           "each","get","set","namespace","include","dynamic","final","native","override","static"
                           ];
private static var future:Array = [
                        "abstract","boolean","byte","cast","char","debugger","double","enum","export","float",
                        "goto","intrinsic","long","prototype","short","synchronized","throws","to","transient",
                        "type","virtual","volatile"
                        ]
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top