[Java] la Généricité

Voir le sujet précédent Voir le sujet suivant Aller en bas

[Java] la Généricité

Message  Nicky le Sam 29 Aoû 2009, 17:27

Hellow ,

je dois repasser le labo de java, et je voulais savoir si il fallait maitriser la généricité ou pas?

si j'ai bien regarder on en parle pas dans les slides mais bon... sait on jamais...

Nicky

Nombre de messages : 300
Age : 29
Prénom : Pierre
Statut : Tout fini ! 2012
Localisation : Bruxelles / Chimay
Date d'inscription : 18/03/2008

Revenir en haut Aller en bas

Re: [Java] la Généricité

Message  nvs le Sam 29 Aoû 2009, 19:54

Nicky a écrit:[...] la généricité [...] on en parle pas dans les slides [...]
je ne connais pas le support du cours de java en première, mais si ce que tu dis est vrai, y'a une fameuse lacune... ce dont je doute très sérieusement puisque cela voudrait dire qu'on n'y parle pas :

  • de la classe Object ;
  • de l'héritage et du polymorphisme ;
  • des collections ;
  • des notions de classe abstraite et d'interface ;
  • d'autres choses que j'oublie et qui peuvent être évidentes...
qui forment un ensemble de notions liées à la généricité en java.

ceci dit, je dois peut-être modérer mon propos car tu fais probablement allusion aux generics, introduits dans le version 1.5 du langage... et là, j'ignore totalement si le cours de première en parle Smile

en gros, faudra attendre le passage de quelqu'un de plus avisé que moi Wink







_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

Re: [Java] la Généricité

Message  Nicky le Sam 29 Aoû 2009, 21:31

http://www.siteduzero.com/tutoriel-3-10421-la-genericite-en-java.html

Voila d'ou je tiens le terme : "généricité"

Tout ce que vous avez citer ne mets pas inconnu, heureusement pour moi a une semaine de l'examen^^

Je sais que je dois rester objectif et recouper les informations de se site avec d'autre source. surtout en ce qui concerne le chapitre sur les collections par exemples.

En ce qui concerne le chapitre sur la "généricité" je ne l'ai pas lu, ni tester... je me suis plutot attarder sur des choses que je savais utile Smile


Au debut du chapitre il parle bien de la version jdk 1.5

Pour ce concept, ajouté au JDK depuis sa version 1.5, nous allons surtout travailler avec des exemples tout au long de ce chapitre.
Le principe de la généricité est de faire des classes qui n'acceptent qu'un certain type d'objet ou de donnée, mais de façon dynamique ! Very Happy.


EDIT: A bas merde NVS a mis le meme lien j'avais po vu...

Bon bah je laisse quand meme le message ^^


EDIT2: Bon je vais jouer la carte de l'honneteté...
http://fr.wikipedia.org/wiki/G%C3%A9n%C3%A9ricit%C3%A9

Bon je crois que je vais lire le chapitre demain... puis dans le pire des cas ca ne sera pas du temps perdu...
mais j'aimerais juste pour soulager ma conscience quand meme savoir si c est really important, si oui, pourquoi ne pas en parler dans les slides, et sinon... pourquoi ca n'est pas important si ca regroupe :
* 1 Polymorphisme
* 2 Programmation générique
o 2.1 Principe
o 2.2 Langages d'implémentation
* 3 Arguments optionnels
* 4 Surcharge et multi-méthodes
* 5 Autres techniques

ceci Very Happy

Nicky

Nombre de messages : 300
Age : 29
Prénom : Pierre
Statut : Tout fini ! 2012
Localisation : Bruxelles / Chimay
Date d'inscription : 18/03/2008

Revenir en haut Aller en bas

Re: [Java] la Généricité

Message  pbt le Dim 30 Aoû 2009, 14:10

Nicky a écrit:
je dois repasser le labo de java, et je voulais savoir si il fallait maitriser la généricité ou pas?

Maîtriser c'est un bien grand mot ;-)
Si je me rappelle bien (je n'ai pas encore relu mon cours ;-) ) tu dois connaitre la généricité mais tu ne dois pas savoir écrire une classe générique ... tu dois simplement pouvoir les utiliser. Ceci dit je me demande si je n'avais pas donné un exemple la-dessus ...

Je définis ce qu'est une pile (Pile.java)
Code:
public abstract class Pile<T> {   
    protected int index= 0;   
    protected int taille ;   

    public Pile (int taille) {       
   this . taille= taille ;   
    }   

    public abstract void push(T élément);   
    public abstract T pop();   
    public boolean isEmpty() {       
      return index == 0;   
    }
}

Et je crée un objet par héritage (ACMEPile.java)
Code:
import java.util.List ;
import java.util.ArrayList ;
import java.lang.reflect.Array ;

public class ACMEPile<T> extends Pile<T> {
   private T[] container ;

   public ACMEPile(int size) {
      super(size);
      //container= new T[size];
      //Java n'autorise pas la création d'un tableau de generics
      container = (T[]) new Object[size];
   }

   public void push(T item) {
      if (index < container.length) {
         container[index]= item;
         index = index + 1;
      }
   }

   public T pop() {
      if (index == 0) return null;
      index = index - 1;
      return container[index];
   }
}

Je peux alors utiliser cette pile avec, par exemple,

Code:
Pile<Assiette> p =  new ACMEPile<Assiette>(15);

_________________
smartq.namok.be · faq ·  · IRC / irc.freenode.net #esi · blog.namok.be
style #pbt {heigth:189cm; weight:79kg; eye-color:#524000; hair:very short; dead pixels: some; }

pbt
Admin

Nombre de messages : 4862
Age : 45
Prénom : Pierre
Statut : prof
Localisation : La cité des géants
Date d'inscription : 24/11/2005

http://esi.namok.be

Revenir en haut Aller en bas

Re: [Java] la Généricité

Message  Nicky le Lun 31 Aoû 2009, 11:24

"L'astuce", est que nous créons une classe qui peut recevoir des objets, étant donné que toute les classe héritent de la classe Object, je peux donc l'instancier avec le type que je veux... mais une fois instancier, un seul type sera accepter (ici des assiettes (pbt devait etre entrain de manger a coté du pc, et c est le 1er object qu'il a vu ^^ )... en gros c'est ca?


Oooooh ADHRV Pbt

Nicky

Nombre de messages : 300
Age : 29
Prénom : Pierre
Statut : Tout fini ! 2012
Localisation : Bruxelles / Chimay
Date d'inscription : 18/03/2008

Revenir en haut Aller en bas

Re: [Java] la Généricité

Message  Contenu sponsorisé Aujourd'hui à 10:49


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum