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

Agents de placement/Fenêtres Java Discussion :

Constructeur de JFrame


Sujet :

Agents de placement/Fenêtres Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Octobre 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 10
    Par défaut Constructeur de JFrame
    Bonjour,

    Je travaille actuellement sur une petite application et j'ai une simple question de débutant à propos d'une ligne.

    Voila une partie du code, correspondant au constructeur de ma fenêtre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public class Fenetre extends JFrame {
    	
    	public Fenetre(){           
    		setTitle("Snake Game");
            setSize(600, 400);
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setLocationRelativeTo(null);
        	setResizable(false);
            setVisible(true);
            this.pack();
    	}
    Ma question est : pourquoi utilisons-nous les méthodes sans mentionner this sauf pour la méthode pack() ??
    Je ne comprends pas car même sans mettre this devant, l'application fonctionne, donc je ne comprends pas pourquoi le programmeur ayant travaillé avant moi sur le projet a fait cette distinction...

    Merci beaucoup !

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    Le "this." est implicite.
    Les deux écritures ont le même effet.

  3. #3
    Membre habitué
    Inscrit en
    Octobre 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 10
    Par défaut
    Ok, donc j'en conclue qu'ici le this ne sert à rien !

    Merci de ta réponse !

  4. #4
    Membre chevronné Avatar de javaNavCha
    Homme Profil pro
    EKG Group
    Inscrit en
    Juillet 2009
    Messages
    311
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

    Informations professionnelles :
    Activité : EKG Group
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2009
    Messages : 311
    Par défaut
    Bonsoir
    Si t'es au niveau de la classe (dans le constructeur ou dans une méthode) et tu mets this.X tu utiliseras X directement, X peut être une variable ou une méthode appliquée sur la classe...
    Je veux te poser

  5. #5
    Membre chevronné Avatar de javaNavCha
    Homme Profil pro
    EKG Group
    Inscrit en
    Juillet 2009
    Messages
    311
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

    Informations professionnelles :
    Activité : EKG Group
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2009
    Messages : 311
    Par défaut
    Bonsoir
    Comme Nudger a dit
    Si t'es au niveau de la classe (dans le constructeur ou dans une méthode) et tu mets this.X tu utiliseras X directement, X peut être une variable ou une méthode appliquée sur la classe...
    Je veux te poser une question...
    je te donne un exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    class XXX {
    //les variables
    public int x=0;
    //.....
     
    // Construteur de la classe XXX
     
    XXX(int x) { // ce x là est privé puisqu'il vient d'une autre classe
    x=x; 
    this.x=x;   // tu peux me donner la différence entre ces deux écritures ?
    }
     
    }
    Alors??

  6. #6
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par javacha4 Voir le message
    Alors??
    S'il n'y a pas d'ambiguité de nom de variables, le "this." est implicite.
    Sinon, le "this." est nécessaire pour spécifier la propriété de l'objet plutôt que le paramètre de la méthode.

    Donc:
    x=x; // => ne fait rien
    this.x=x; // => affecte la valeur de l'entier x passé en paramètre à l'entier x propriété de l'objet courant.

  7. #7
    Membre chevronné Avatar de javaNavCha
    Homme Profil pro
    EKG Group
    Inscrit en
    Juillet 2009
    Messages
    311
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

    Informations professionnelles :
    Activité : EKG Group
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2009
    Messages : 311
    Par défaut
    Citation Envoyé par Nudger Voir le message
    S'il n'y a pas d'ambiguité de nom de variables, le "this." est implicite.
    Sinon, le "this." est nécessaire pour spécifier la propriété de l'objet plutôt que le paramètre de la méthode.

    Donc:
    x=x; // => ne fait rien
    this.x=x; // => affecte la valeur de l'entier x passé en paramètre à l'entier x propriété de l'objet courant.
    Merci
    je le savais, mais j'ai voulu que k-sper réponde
    tu vois ce qu'il a dit :
    Ok, donc j'en conclue qu'ici le this ne sert à rien !
    Merci de ta réponse !
    C'est pour ça que j'ai posé cette question pour qu'il remarque la différence

Discussions similaires

  1. [VB6]Déclaration d'un Constructeur Spécialisé
    Par TagadaTsoin dans le forum VB 6 et antérieur
    Réponses: 21
    Dernier message: 26/05/2004, 15h09
  2. Capture d'exception dans un constructeur
    Par declencher dans le forum Composants VCL
    Réponses: 8
    Dernier message: 03/02/2004, 13h52
  3. Comment mettre une image en fond de JFrame
    Par marc26 dans le forum Débuter
    Réponses: 3
    Dernier message: 19/01/2004, 18h57
  4. Faire une JFrame avec LookAndFeel
    Par aburner dans le forum Agents de placement/Fenêtres
    Réponses: 5
    Dernier message: 03/12/2003, 09h54
  5. pb constructeurs classes dérivant classe abstraite
    Par Cornell dans le forum Langage
    Réponses: 2
    Dernier message: 10/02/2003, 20h02

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