Je ne comprends pas mon erreur sur ce programme. Pouvez-vous m'aider ?
package fr.codegym.task.task06.task0621;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*
Relations avec les chats
*/
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader lecteur = new BufferedReader(new InputStreamReader(System.in));
String nomGrandpere = reader.readLine();
Chat grandpereChat = new Chat(nomGrandpere);
String nomGrandmere = reader.readLine();
Chat grandmereChat = new Chat(nomGrandmere);
String nomPere = reader.readLine();
Chat pereChat = new Chat (nomPere, grandpereChat);
String nomMere = reader.readLine();
Chat mereChat = new Chat(grandmereChat,nomMere);
String nomFils = reader.readLine();
Chat filsChat = new Chat(nomFils, pereChat,mereChat);
String nomFille = reader.readLine();
Chat filleChat = new Chat(nomFille,pereChat,mereChat);
System.out.println(grandpereChat);
System.out.println(grandmereChat);
System.out.println(pereChat);
System.out.println(mereChat);
System.out.println(filsChat);
System.out.println(filleChat);
}
public static class Chat {
private String nom;
private Chat pere;
private Chat mere;
Chat(String nom) {
this.nom = nom;
}
Chat(String nom, Chat pere) {
this.nom = nom;
this.pere = pere;
}
Chat(Chat mere, String nom) {
this.mere = mere;
this.nom = nom;
}
Chat(String nom, Chat pere, Chat mere) {
this.nom = nom;
this.pere = pere;
this.mere = mere;
}
@Override
public String toString() {
String s="Le nom du chat est " + this.nom+",";
if (mere == null && pere == null)
s += " pas de mère, pas de père";
else if (mere != null && pere == null)
s += mere.nom + " est sa mère, pas de père";
else if (mere == null)
s += " pas de mère, " + pere.nom + " est son père";
else s += mere.nom + " est sa mère, " + pere.nom + " est son père ";
return s;
}
}
}