[Language]Problème de conception
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
class Eleve{
string nom;
int age;
int matricule=10000;
ListeUv UV;
public Eleve( String nom,int age, ListeUv uv){
this.nom=nom;
this.age=age;
this matricule=matricule;
this.uv=ListeUv;
matricule++;
}
}
class ListeEleve{
Eleve element;
ListeEleve suivant;
public ListeEleve( eleve premier,ListeEleve reste){
element =premier;
suivant=reste;
}
public void ListeEleve insertionDebut(Eleve elem){
return new ListeEleve(elem,this);
} |
par quel moyen (methode)puis je avoir acces au matricule d'un eleve
en passant par la listeeleve decrite plus haut
[ Modéré par SEMPERE Benjamin ]
Ajout d'un tag dans le titre
Modification du titre
Ajout des balises code
:arrow: Les Règles du Forum
Re: [Débutant]Problème de conception
Citation:
Envoyé par lautre
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
class Eleve{
string nom;
int age;
int matricule=10000;
ListeUv UV;
public Eleve( String nom,int age, ListeUv uv){
this.nom=nom;
this.age=age;
this matricule=matricule;
this.uv=ListeUv;
matricule++;
}
}
class ListeEleve{
Eleve element;
ListeEleve suivant;
public ListeEleve( eleve premier,ListeEleve reste){
element =premier;
suivant=reste;
}
public void ListeEleve insertionDebut(Eleve elem){
return new ListeEleve(elem,this);
} |
par quel moyen (methode)puis je avoir acces au matricule d'un eleve
en passant par la listeeleve decrite plus haut
[ Modéré par SEMPERE Benjamin ]
Ajout d'un tag dans le titre
Modification du titre
Ajout des balises code
:arrow: Les Règles du Forum
Première remarque, on dit bonjour quand on post sur un forum....
Bref, sinon toutes les infos dont tu as besoin pour utiliser une ArrayList sont dans la faq
Re: [Débutant]Problème de conception
Citation:
Envoyé par SEMPERE Benjamin
Première remarque, on dit bonjour quand on post sur un forum....
Bref, sinon toutes les infos dont tu as besoin pour utiliser une ArrayList sont dans la
faq
Bonne remarque de Benjamin :wink: , c'est toujours plus sympatique et poli de dire bonjour ou Salut.
Pour ton cas, tu n'as pas besoin de définir ta classe ListeUV. Il y a suffisamment de classes utilitaires dans le SDK de Java pour éviter de "réinventer la roue".
ArrayList est pratique si tu connais à l'avance la taille (maximal) du contenu. Par défaut, il est initialisé à 10 éléments max. si tu dépasses ce nombre après jout successifs, il s'élargira automatiquement (par un paramettre que tu peux définir lorsque tu contruit cet objet). Attention cette opération est coûteuse en terme de performance.
LinkedList est pratique si la taille de ta liste variera au cours de son cycle de vie.
Si tu as besoin de surdéfinir cette classe (ajouter des propriétés par exemple) tu peux très bien faire de la façon suivante:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
public class ListeUV {
ArrayList uvs;
String commentaire;
String dateModification;
//constructeur
public ListeUV {
uvs = new ArrayList(NB_MAX_UVS); //NB_MAX_UVS a mettre
// dans un fichier de constante
commentaire = "";
dateModification = ...; //appeler une fonction utile qui récupère
//la date du jour au format dd/MM/yyyy
}
//getters et setters
}
//même chose pour ListeEleve |
Sinon si tu n'a pas besoin de tout celà, tu déclares un attribut ArrayList dans ta classe Eleve.
Pour ajouter des éléments, tu appèlles le getter correspondant et tu invoque la méthode add(Objet). Tu peux ajouter des fonctions de vérification d'instance afin d'être sûr que tu ajoutes bien l'objet attendu.
bon, peut-être que maintenant tu as qq pistes pour pouvoir finir l'écriture de tes classes. N'hésites pas à demander mais essaye de rechercher soit sur le site developpez.com (FAQ, tutoriels, cours, forums), le site de Sun, etc ... avant de poster.
Bon courage.