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

avec Java Discussion :

Différence entre quelques Methodes Static en java


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Développeur Web
    Inscrit en
    Novembre 2008
    Messages
    146
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2008
    Messages : 146
    Par défaut Différence entre quelques Methodes Static en java
    bonjours tout le monde
    pourriez vous m'expliquer c'est quoi la différence entre les méthodes static normale comme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    .......
    public static String chaine = "bonjour";
    .......
    public static void MaMethodeStatique()
        {    
            int nombre = 10;
     
            System.out.println("Appel de la méthode statique : " + nombre + chaine);  
        }
    et :
    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
    @Entity
    public class User extends Model {
     
        public String email;
        public String password;
        public String fullname;
        public boolean isAdmin;
        
        public User(String email, String password, String fullname) {
            this.email = email;
            this.password = password;
            this.fullname = fullname;
        }
        public static User connect(String email, String password) {
        return find("byEmailAndPassword", email, password).first();
    }
    et bien sur avec la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public static void main ...
    j'arrive pas a comprendre la méthode surtout surtout la méthode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public static User connect.....}
    ]

  2. #2
    Membre éclairé
    Homme Profil pro
    NoOb
    Inscrit en
    Mai 2007
    Messages
    554
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : NoOb

    Informations forums :
    Inscription : Mai 2007
    Messages : 554
    Par défaut
    La méthode connect est indépendante des valeurs de l'objet. Elle pourrait se trouver ailleurs et faire le même travail.

    Elle a le même principe que ta méthode MaMethodeStatique.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Citation Envoyé par Génoce Voir le message
    Elle pourrait se trouver ailleurs et faire le même travail.
    Non pas exactement.
    Une méthode static n'a pas de "this", son appel n'est pas associée à un objet particulier.
    Néanmoins, elle a le droit d'accès aux membres private des objets de cette classe.

  4. #4
    Membre éclairé
    Homme Profil pro
    NoOb
    Inscrit en
    Mai 2007
    Messages
    554
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : NoOb

    Informations forums :
    Inscription : Mai 2007
    Messages : 554
    Par défaut
    Citation Envoyé par Nudger Voir le message
    Bonjour,



    Non pas exactement.
    Une méthode static n'a pas de "this", son appel n'est pas associée à un objet particulier.
    Néanmoins, elle a le droit d'accès aux membres private des objets de cette classe.
    Tout à fait, c'était à préciser, mais dans le code fournis, elle ne le fait pas.

  5. #5
    Membre confirmé
    Développeur Web
    Inscrit en
    Novembre 2008
    Messages
    146
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2008
    Messages : 146
    Par défaut
    Merci bien pour la réponse
    Citation Envoyé par Génoce Voir le message
    La méthode connect est indépendante des valeurs de l'objet.
    voila c'est le point qui me trempe le plus ! est ce que vous pouvez m'éclaircir un peux SVP "comment elle est indépendante et comme peut on l'utilisé dans la même classe et/ou ailleurs?"
    cordialement

  6. #6
    Membre éclairé
    Homme Profil pro
    NoOb
    Inscrit en
    Mai 2007
    Messages
    554
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : NoOb

    Informations forums :
    Inscription : Mai 2007
    Messages : 554
    Par défaut
    Si tu créer un méthode statique dans laquelle tu tentes d'acceder un attribut de l'objet, le compilo va pas être content, il voudra que tu passes cet attribut en statique.

    Le plus souvent les méthodes statiques sont des méthodes qui effectue un calcul et renvoient un résultat, dans des classes métier.

    Exemple 'alacon':
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public class Maths {
     
    public static int multiplier (int a, int b) {
        return a * b;
    }
     
    public static int carre (int a) {
        return a * a;
    }
     
    }

  7. #7
    Membre confirmé
    Développeur Web
    Inscrit en
    Novembre 2008
    Messages
    146
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2008
    Messages : 146
    Par défaut
    oui vous avez raison j'ai testé la Class Test avec deux attribut l'un n'est pas static et j'ai eu un erreur de compilation dans la méthode static comme vous m'avez dit ,mais les attribues de la methode connect de la class User ne sont pas static et ça marche bien quand même pourquoi ?

  8. #8
    Invité
    Invité(e)
    Par défaut
    Car la méthode static n'utilise pas "this", elle n'utilise que les paramètres qui lui sont donnés.

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

Discussions similaires

  1. Différence entre deux variables de type java.util.Date
    Par hetlar dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 30/08/2012, 07h04
  2. Différence entre #define et static const int
    Par memoire.ph dans le forum Débuter
    Réponses: 6
    Dernier message: 02/04/2012, 01h05
  3. Différence entre le byte-code de Java et MSIL
    Par medamin27 dans le forum Général Dotnet
    Réponses: 8
    Dernier message: 19/06/2011, 11h10
  4. Réponses: 2
    Dernier message: 11/12/2009, 22h27
  5. Différence entre J2EE 1.4 et Java EE 5
    Par walouch dans le forum Java EE
    Réponses: 1
    Dernier message: 07/02/2008, 16h55

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