Bonsoir à tous,
Tout d'abord je tiens à m'excuser si je me trompe de section mais je suis nouveau sur ce forum.
Je vous expose donc mon problème :
J'ai une classe mère nommé Compte qui possède deux classes filles "CompteCourant" et "LivretEpargne". Utilisant la sérialisation plutôt qu'une base de donnée (contrainte personnelle, j'aime me faire du mal -_-'), j'ai du stocker les classes filles dans une ArrayList de Compte. Bon jusque là pas de soucis et comme ça j'écris tout dans un seul fichier et je récupère tout correctement avec les bons formats de classes. Bref. Les choses se compliquent quand je veux créer la fiche d'un compte. Soit lire les données d'un compte de l'une ou de l'autre des classes filles (la classe mère n'a pas de constructeur).
Voici le code qui fait mal aux yeux :
CompteCourant leCompte = f.getListeCompte().get(i) est vraiment pas conseillé et de toute façon NetBeans n'en veut pas même si j'ai bien vérifié qu'il s'agissait d'un compteCourant au préalable.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 while (!trouve && i < f.getListeCompte().size()) { if (numCompte == f.getListeCompte().get(i).getNumeroCompte()) { trouve = true; if(f.getListeCompte().get(i).getClass().getName().equals("gestioncb.CompteCourant")){ CompteCourant leCompte = f.getListeCompte().get(i); } }else{ i++; } }
Une solution serait de passer ma fenêtre dans ma classe mère Compte et de la rendre Abstract et de créer une méthode qui remplirait les champs de la fenêtre. Ainsi j'utiliserai le polymorphisme.... Mais est-ce propre ?
Quelqu'un peut-il venir à mon secours ?
Partager