IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ActionScript 3 Discussion :

Utilisation des Setter / Getter


Sujet :

ActionScript 3

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Points : 8
    Points
    8
    Par défaut [Résolu]Utilisation des Setter / Getter
    Bonjour,

    Je suis actuellement entrain de me former à AS3 par le biais du livre Pratique d'ActionScript 3, que j'ai trouver en téléchargement libre.

    Je suis bloquer a une étape importante du Chapitre 8 - Class Joueur.
    J'ai bien suivie tout les étape du livre mais je pense qu'il y a a une erreur dans le pdf et que donc cette exemplaire n'était pas la dernière version.

    Le but de cette partie du cours devais m'apprendre à utiliser la méthodes lecture/ecriture (Getter/Setter) au lieu d'une méthodes d’affectation et de récupération (fonction getNom())

    joueur.fla
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    var monJoueur:Joueur = new Joueur("Stevie", "Wonder", 57, "Michigan");
     
    //ok affiche "getNom : Wonder"
    trace( "getNom : "+monJoueur.getNom() );
     
    //devrais afficher "Le nom spécifié est trop long"
    monJoueur.nom = "UnNomTresTresTresTresTresTresLong";
    //devrais afficher "nom : Wonder"
    trace(  "nom : "+monJoueur.nom ) ;
    joueur.as
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    package {
    	public class Joueur {
    		// définition des propriétés de la classe
    		private var _nom:String;
    		public var nom2:String;
    		private var prenom:String;
    		private var age:int;
    		private var ville:String;
     
    		// fonction constructeur 
    		public function Joueur( pPrenom:String, pNom:String, pAge:int, pVille:String ) {
    			prenom=pPrenom;
    			_nom=pNom;
    			nom2=pNom;
    			age=pAge;
    			ville=pVille;
    		}
    		// récupère le nom du joueur 
    		public function get nom( ):String {
    			return _nom;
    		}
    		// récupère le nom du joueur
    		public function getNom( ):String {
    			return nom2;
    		}
    		// permet de changer le nom du joueur 
    		public function set nom( pNom:String ):void {
    			if (pNom.length<=30) {
    				_nom=pNom;
    			} else {
    				trace("Le nom spécifié est trop long");
    			}
    		}
    	}
    }
    Lorsque je test, je reçois 2 erreur de compilation du type :
    1178: Tentative d'accès à la propriété inaccessible nom, via la référence de type static Joueur.
    sur les ligne :
    monJoueur.nom = "UnNomTresTresTresTresTresTresLong";
    et
    trace( "nom : "+monJoueur.nom ) ;

    Si je commente c'est 2 ligne et que je test le script, la function getNom fonctionne correctement et me renvoie bien "nom : Wonder"

    Si vous avez des question, n'hésiter pas j'y redonderai dans la limite de mes connaissance et dans ce que j'ai compris jusqu'à la.

    Merci d'avance pour votre aide.

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 124
    Points : 156
    Points
    156
    Par défaut
    Y a pas de raisons pour que cela ne fonctionne pas le code semble ok.
    Fais un clean de ton projet peut-être ?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    En faite ma class et le fichier .as ne porter pas exactement le meme nom :

    "Joueur" => "joueur.as"

    Faut respecter la casse

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 38
    Dernier message: 05/02/2015, 16h30
  2. Réponses: 15
    Dernier message: 17/05/2011, 07h58
  3. setter getter: du mal à correctement les utiliser à cause du return
    Par johnny3 dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 14/06/2008, 12h04
  4. Des getters er des Setters avec visual Studio 2005
    Par zghidi dans le forum Visual Studio
    Réponses: 9
    Dernier message: 27/02/2008, 13h37
  5. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/04/2002, 16h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo