Bonsoir! Dites j'ai un petit devoir en Java à faire (que j'ai même fait!) mais j'aimerais avoir vos conseils! J'ai deux classes avec 2 constructeurs chacune et je dois réaliser le deuxième constructeurs de chacune:
La classe Maillon
c'est la réalisation Java d’un maillon.
Elle comprend un attribut element qui est l’élément mis dans la pile et un attribut next qui référence le maillon suivant.
La classe Maillon n’est visible que par les classes de son espace de noms.
Elle est définie dans le même fichier que la classe Stack.
La classe Maillon a deux constructeurs :
1. un constructeur qui admet un élément passé en argument, dans ce cas le maillon suivant est établi à null lors de la déclaration des attributs.
2. un constructeur qui admet un élément passé en argument et le maillon suivant.
La classe Maillon a trois méthodes ayant une visibilité par défaut :
- Object getElement() retourne l'élément associé au maillon courant
- Object next() retourne le maillon suivant
- boolean hasNext() retourne true s’il existe un maillon suivant, false sinon
Les méthodes de réalisation sont:
•void setNext(Maillon next) affecte l’attribut next avec le maillon passée en argument
•void setElement(Object o) affecte l’attribut element avec l’objet o passé en argument
La classe Stack
La classe Stack est publique, elle a un attribut top qui référence le premier maillon.
Elle a deux constructeurs:
1.un constructeur vide dans ce cas l’élément sommet est égal à null et la pile est vide et de taille zéro.
2. un constructeur qui admet un élément passé en argument de type Object, dans ce cas, il y a création d’un maillon (instance de la classe Maillon) avec l’élément suivant à null.
La classe Stack admet les quatre méthodes publiques suivantes :
- void push(Object object) place au sommet de la pile l’objet passé en argument
- Object pop() retourne l’élément qui se trouve au sommet de la pile et place l’élément suivant au sommet de la pile.
- Object first() accède au premier élément de la pile sans modifier la pile boolean
- isEmpty() retourne true si la pile est vide
Méthodes de réalisation de la classe Stack:
•void setTop(Object o) établit le sommet de la pile avec le maillon passé en argument
• Maillon getTop() retourne le sommet de la pile
• Maillon next() retourne le maillon suivant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Maillon (element, element.next) { } public Stack (object element){ m= new Maillon; m.next = null; }
Mais le prof a donné (en incluant dans les classes ses constructeurs...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public class Stack (Object top){ private Maillon top; public Stack(){} public Stack(object element){ setTop new (Maillon (e)); } }
Et n'a pas donné le code du constructeur de Maillon en disant "pffft, facile" :/
Mon constructeur est-il pour autant faux?
Partager