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

Langage Java Discussion :

c'est quoi l'interet de "Static"


Sujet :

Langage Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 52
    Points : 34
    Points
    34
    Par défaut c'est quoi l'interet de "Static"
    Bonjour;
    quelqu'un pourais m'expliquer qu'elle est l'interet de déclarer une variable ou methode "Static". SVP

  2. #2
    Membre extrêmement actif Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 814
    Points
    814
    Par défaut
    salut, declarer une variable static (ou meme une fct) signifie que ce membre n'est pas specifiq a un objet mais a la classe, tous les objets de la classe partagent cette meme variable. Et de ce fait tu peux y acceder ainsi : Maclasse.MonVarStatic
    ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    class UneClasse {
    public static int counter = 0;
    }
     
    class Main {
    public static void main (String []args) {
    UneClasse un = new UneClasse (), deu = new UneClasse ();
    un.counter++;
    println (UneClasse.counter); // affiche 1
    deu.counter++ ;
    println (un.counter); // affiche 2
    }
    }
    Heureux soient les fêlés, car ils laisseront passer la lumière.

    Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  3. #3
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2008
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mars 2008
    Messages : 109
    Points : 74
    Points
    74
    Par défaut
    Quand on déclare une variable en static cela permet par exemple de compter le nombre d'instance de la classe qui contient la variable.

  4. #4
    Membre émérite
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Points : 2 411
    Points
    2 411
    Par défaut
    Salut,

    Il est aussi à préciser qu'une variable "static" possède la même valeur pour toutes les instances d'une classe. Si sa valeur change, elle change dans toutes les instances.

    F.
    Développeur Java / Flex à Shanghai, Chine
    mes publications
    Mon dernier tutoriel : Messages Quit IRC : explications

    La rubrique IRC recrute des redacteurs : contactez moi

    Ce flim n'est pas un flim sur le cyclimse. Merci de votre compréhension.[/SIZE]

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 52
    Points : 34
    Points
    34
    Par défaut
    donc si j'ai bien compris c'est que on changeant la valeur d'une variable static pour un objet d'une certaine class , ca change pour tt les objet issu de cette meme class, c ca??????

  6. #6
    Membre extrêmement actif Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 814
    Points
    814
    Par défaut
    tu as bien compris, c'est comme une variable commune en qq sorte
    Heureux soient les fêlés, car ils laisseront passer la lumière.

    Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 52
    Points : 34
    Points
    34
    Par défaut
    OKK, merci tt le monde c'est trés gentil de votre part,en fait je ss novice en java et j'aurais peut etre encor des questions a vous poser.

  8. #8
    Membre éprouvé Avatar de laurentibus
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 908
    Points
    908
    Par défaut
    oui par exemple si tu as une classe serveurDeRestaurant tu peu mettre la variable static nbreCouvert que chaque serveurDeRestaurant pourra incrementer .. comme ca a la fin de la soiree tu peux savoir le nbre de couvert total .. c'est sympa hein
    ... un flash ... et ça repart

    700R ... catch me if u can

    Best regards,
    .

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 52
    Points : 34
    Points
    34
    Par défaut
    dsl une autre petit question et c'est fini
    en fait je voudrais aussi savoir l'interet pour la déclaration d'une class ou une méthode "Static".

  10. #10
    Membre extrêmement actif Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 814
    Points
    814
    Par défaut
    Citation Envoyé par Kirou Voir le message
    OKK, merci tt le monde c'est trés gentil de votre part,en fait je ss novice en java et j'aurais peut etre encor des questions a vous poser.
    n'hésite pas on est là pour ça
    Heureux soient les fêlés, car ils laisseront passer la lumière.

    Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  11. #11
    Membre chevronné
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Points : 2 011
    Points
    2 011
    Par défaut
    Citation Envoyé par Kirou Voir le message
    dsl une autre petit question et c'est fini
    en fait je voudrais aussi savoir l'interet pour la déclaration d'une class ou une méthode "Static".
    Je te suggère d'aller voir la FAQ, tout ce qui concerne static est expliqué.

    Reviens par ici si c'est pas clair.

    -"Tout ça me paraît très mal organisé. Je veux déposer une réclamation. Je paye mes impôts, après tout!"
    -"JE SUIS LA MORT, PAS LES IMPÔTS! MOI, JE N'ARRIVE QU'UNE FOIS".

    Pieds d'argile (1996), Terry Pratchett 1948 - 2015
    (trad. Patrick Couton)

  12. #12
    Membre expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Points : 3 083
    Points
    3 083
    Par défaut
    Citation Envoyé par laurentibus Voir le message
    oui par exemple si tu as une classe serveurDeRestaurant tu peu mettre la variable static nbreCouvert que chaque serveurDeRestaurant pourra incrementer .. comme ca a la fin de la soiree tu peux savoir le nbre de couvert total .. c'est sympa hein
    Les variables statiques sont quand même à utiliser avec parcimonie, il est souvent préférable d'avoir une variable normale dans un objet qu'on "passe" aux objets l'utilisant.

    Car ton appli de gestion de restaurant, si un jour ton restaurant ouvre une deuxième enseigne dans la rue d'en face et que tu veux gérer les 2 restaurants dans le même programme, tu vas avoir un problème si tu as tes couverts en static car tu voudras sûrement différencier les couverts du restaurant 1 et du restaurant 2.
    Avoir une variable static c'est limiter l'évolutivité de son programme.

    J'utilise par contre très souvent des "static final", i.e. qu'on ne peut pas modifier.
    Ceci pour des "clés" de propriétés par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public static final String PROP_CHOIX = "choix";
     
    setProperty(PROP_CHOIX, true);
    Comment ça ? La réponse à ton problème n'est ni dans la faq, ni dans les tutos, ni dans sources ??? Etonnant...
    De la bonne manière de poser une question (et de répondre).
    Je ne fais pas de service par MP. Merci (...de lire les règles...).
    Ma page dvp.com

  13. #13
    Membre éprouvé Avatar de laurentibus
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 908
    Points
    908
    Par défaut
    oui c'est vrai nous sommes trop bon .... KIROU !!!!!!!!!!!!!!!!! :


    ----> <----


    ... un flash ... et ça repart

    700R ... catch me if u can

    Best regards,
    .

  14. #14
    Membre éprouvé Avatar de laurentibus
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 908
    Points
    908
    Par défaut
    ouais natha c'etait pour info .. touche pas a ma "super" idée de restaurant .... et puis deux restaurants c'est pas pour tout de suite .... il faut d'abord que le premier marche ....
    ... un flash ... et ça repart

    700R ... catch me if u can

    Best regards,
    .

  15. #15
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 52
    Points : 34
    Points
    34
    Par défaut
    dsl pour le retard mais c bon je pesne que tt est claire....... merci encors une fois

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

Discussions similaires

  1. C'est quoi XMLRAD ?
    Par laffreuxthomas dans le forum XMLRAD
    Réponses: 10
    Dernier message: 09/08/2003, 02h42
  2. C'est quoi "Profile" dans le assign du XMLGram ?
    Par Lux interior dans le forum XMLRAD
    Réponses: 2
    Dernier message: 28/02/2003, 11h37
  3. C'est quoi exactement un générateur d'états
    Par Henry Cesbron Lavau dans le forum Outils de restitution et d'analyse
    Réponses: 0
    Dernier message: 02/04/2002, 19h15

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