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 :

Questions sur les collections & Interface


Sujet :

Collection et Stream Java

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2013
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Questions sur les collections & Interface
    Bonjour , je suis débutant en Java et j'aborde là le chapitre sur les collections .
    J'ai beacoup de mal à comprendre le concept de ce chapitre !
    Et j'ai une série de questions pour vous !

    Quelle est la difference entre ces lignes de codes Svp ?

    (1) List m = new ArrayList();

    (2) ArrayList m = new ArrayList();

    (3)ArrayList <Objets> m = new ArrayList<Objets> () ;

    J'ai une seconde question :

    A quoi servent les interfaces précisement ? parce que honnetement je ne vois pas la difference avec les classe abstraites ...

    Merci d'avance !

  2. #2
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2011
    Messages : 34
    Points : 23
    Points
    23
    Par défaut Collections
    Bonjour,

    Je ne suis pas capable d'aller très loin dans les détails, mais :

    (1) est à éviter dans le cas général, car tu sous-emploies ArrayList ;
    (2) est mieux, mais j'évite cela aussi, car je ne sais pas ce que CONTIENT m ;
    (3) est plus classique tu as une collection homogène d'objets.

  3. #3
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 648
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 648
    Points : 11 137
    Points
    11 137
    Par défaut
    Bonjour,

    tu as les réponses à tes questions ici :
    http://java.developpez.com/faq/java/...angage_donnees

    Citation Envoyé par Rhodo33 Voir le message
    (1) est à éviter dans le cas général, car tu sous-emploies ArrayList ;
    ben non justement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    List<Object> list = new ArrayList<Object>();
    est ce qu'il faut faire.

  4. #4
    Membre actif
    Homme Profil pro
    Développeur Java / JEE
    Inscrit en
    Février 2008
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java / JEE

    Informations forums :
    Inscription : Février 2008
    Messages : 185
    Points : 293
    Points
    293
    Par défaut
    Bonjour,

    Une interface te permet de décrire un "contrat" à respecter.
    Une interface peut avoir plusieurs implémentation différente.

    Par exemple dans ton cas ArrayList est une implémentation possible de List, mais d'après la JavaDoc tu as aussi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    All Known Implementing Classes:
        AbstractList, AbstractSequentialList, ArrayList, AttributeList, CopyOnWriteArrayList, LinkedList, RoleList, RoleUnresolvedList, Stack, Vector
    Une classe abstraite te permet de factoriser une partie de l'implémentation. Tu ne peux pas l'utiliser telle quelle. Il te faut une classe qui l'implémente complètement.

    La syntaxe <> te permet de limiter ta liste à un type d'objet en particulier.
    Par exemple List<String> ne peut contenir que des String.

    Mathieu

  5. #5
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Citation Envoyé par Auteur Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    List<Object> list = new ArrayList<Object>();
    est ce qu'il faut faire.
    Juste pour préciser les dires d'Auteur, la syntaxe correcte dans ton cas est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    List<Objets> list = new ArrayList<Objets>();
    Ce qui laisse supposer que tu as une classe "Objets".

    Typer une liste avec "Object" n'aurait pas vraiment de sens puisque toute classe Java implémente Object. L'avantage du typage serait perdu dans ce cas.
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

Discussions similaires

  1. Question sur les collections
    Par philippe6 dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 08/02/2013, 15h52
  2. Question sur les collections
    Par jawahir dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 29/12/2011, 22h30
  3. Question sur les collections
    Par van der zahir dans le forum Langage
    Réponses: 2
    Dernier message: 15/09/2011, 09h10
  4. Quelques questions sur les collections en java ?
    Par bambino13 dans le forum Collection et Stream
    Réponses: 0
    Dernier message: 30/05/2009, 21h48
  5. Question sur les collections
    Par gibea00 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 13/09/2007, 20h26

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