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

Collection et Stream Java Discussion :

Utilité de private dans Java


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Étudiant
    Inscrit en
    Janvier 2010
    Messages
    41
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2010
    Messages : 41
    Par défaut Utilité de private dans Java
    Salut a tous
    Je suis débutant en langage Java et dans les cours à l'université et le tutoriel de cysboy je rencontre une nouvelle notion c'est "l'encapsulation" des variables et des méthodes(public,private...) et jusqu'à maintenant je vois aucune utilité de cacher les variables puisque mon programme sera compiler en exécutable et tout mon code source sera invisible par l'utilisateur
    alors on protège les variables de qui?
    y a t il quelqu'un qui peut me répondre à cette question? :euh: merci d'avance et n'oubliez pas que je suis débutant en programmation

  2. #2
    Membre Expert Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Par défaut
    Regarde sur ce post

    Personnellement, j'ai toujours pris habitude de mettre toutes mes variables en private (sauf cas particulier). Et pour les méthodes mettre en private les méthodes seulement utilisées à l'intérieur de la classe.

    Comme dit dans le post ci-dessus, c'est un principe de conception.

  3. #3
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut Array
    l'encapsulation n'est en rien un outils de sécurité. Tu cache tes donnée du reste du code.

    Je vais prendre un exemple simple, la classe ArrayList de java. Tu va trouver dessus tout un tas de méthodes pour rajouter, lister et retirer des éléments de la liste. Va-tu trouver un accès au tableau interne qui les gère? non. Va-tu trouver un accès aux différents compteurs et itérateur interne? Non. Et pourtant la classe est utile, fait exactement ce qu'on lui demande. Et grâce à l'encapsulation

    -> Si demain son fonctionnement interne change, je dois pas changer mon code
    -> Les codes qui utilisent la classe sont lisible et plus ou moins standardisé.

    L'encapsulation vise donc à cacher l'implémentation pour avoir au final un objet propre avec une logique d'accès clairement définie. Ca facilite la lecture, la maintenance et le développement d'un manière général.

  4. #4
    Membre confirmé
    Inscrit en
    Février 2008
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 123
    Par défaut
    Les méthodes privates permettent d'éviter aux autres développeurs de devoir connaître le fonctionnement interne d'une classe, ils se contentent juste de connaitre la méthode public.

  5. #5
    Membre confirmé Avatar de med_alpa
    Inscrit en
    Juillet 2005
    Messages
    134
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 134
    Par défaut
    private est utilisé pour protéger tes données.

    En effet tu n'as un accès aux données qu'à travers des getteurs et des setteurs. ainsi dans le setteur tu peux rajouter les contrôles nécessaires.

  6. #6
    Membre émérite
    Avatar de michel.di
    Homme Profil pro
    Freelance
    Inscrit en
    Juin 2009
    Messages
    782
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 782
    Par défaut
    Citation Envoyé par med_alpa Voir le message
    private est utilisé pour protéger tes données.

    En effet tu n'as un accès aux données qu'à travers des getteurs et des setteurs. ainsi dans le setteur tu peux rajouter les contrôles nécessaires.
    Comme l'a dit tchize_ plus haut non! ça sert à masquer le traitement effectué!

Discussions similaires

  1. [JSP/Tomcat] Intégration de PHP dans Java
    Par milhouz_deglingos dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 17/08/2005, 12h02
  2. Réponses: 1
    Dernier message: 30/03/2005, 14h03
  3. [PROPERTIES] Bug dans java.util.Properties ?
    Par mathieu dans le forum Collection et Stream
    Réponses: 6
    Dernier message: 28/04/2004, 15h11
  4. Comment generer un fichier war dans java
    Par relivio dans le forum ANT
    Réponses: 4
    Dernier message: 12/03/2004, 13h43

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