Bonjour j'ai une classe ligne et une classe paragraphe j'utilise l'agrégation pour afficher plusieurs ligne dans la classe paragraphe en appelant la méthode saisie e affiche de la classe ligne dans ;a classe paragraphe mais il affiche n fois la dernière ligne. Merci de m'aider à résoudre le problème.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
import java.util.Scanner;
 
public class Ligne {
private String mots;
private String fin;
public Ligne()
{
 
}
 
 
public Ligne(String mots,String fin)
{
this.mots=mots;
this.fin=fin;
 
}
public String getMots(){
return mots;
}
public void setMots(String mots) {
this.mots = mots;
}
public String getFin()
{
return fin;
}
public void setFin(String fin){
this.fin=fin;
}
public void saisie()
{
 
Scanner sc= new Scanner (System.in);
System.out.println("Donnez le mots: ");
this.mots=sc.nextLine();
System.out.println("Donnez la dernière: ");
this.fin=sc.nextLine();
 
} 
 
 
public void affiche()
{
 
System.out.println(mots+" /"+fin+"/");
 
}
 
 
}
et une classe paragraphe composée de n lignes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import java.util.Scanner;
 
public class Paragraphe {
Scanner sc= new Scanner (System.in);
private Ligne suiteDeLigne[];
private int nbLigne;
 
Ligne vers=new Ligne();
 
public Paragraphe()
{
this.nbLigne=0;
}
public void saisie()
{
System.out.println("Donnez le nombre de vers: ");
nbLigne=sc.nextInt();
suiteDeLigne sl =new Ligne[nbLigne];
for(int i=0;i<nbLigne;i++)
{
vers.saisie();
suiteDeLigne[i]=sl;
 
}
 
}
 
public void affiche()
{
for(int i=0;i<nbLigne;i++)
{
suiteDeLigne[i].affiche();
}
}
public static void main(String arg[])
{
Paragraphe pg = new Paragraphe();
pg.saisie();
pg.affiche();
}
 
 
}