Récupérer une instance non statique
Bonjour,
Je ne sais pas trop comment expliquer mon problème, alors me tapez pas si c'est pas très clair.
J'ai fais des classes permettant de lire des données depuis une base. Chaque instance représente une ligne. Pour des problèmes de mise à jour, ces instances ne sont pas gardée (non statique). Exemple :
Code:
1 2 3 4 5 6
| public class Personne {
public Personne (String identifiant){
//Lecture de la ligne dans la base
}
//etc ...
} |
Dans l'application, j'ai des écrans utilisateurs qui pointent vers une certaine instance :
Code:
1 2 3 4
| public class EcranPersonne {
private Personne personneAffichée;
//etc ...
} |
Maintenant, dans une autre classe indépendante, je voudrais savoir si une personne avec tel identifiant est déjà en cours d'utilisation quelque pars, du style :
Code:
1 2 3 4 5 6 7
| public class Traitement{
public void mettreAJour(){
// Trouver si un objet ayant cet identifiant existe
if (Personne.getInstance(identifiant) != null)
Personne.getInstance(identifiant).faireUnTraitement();
}
} |
Est-ce possible sans passer par des champs statiques, et sans faire de lien entre les classes "EcranPersonne" et "Traitement" ?
Je préfère éviter un champ statique, car celà m'obligerait à vérifier qu'elle n'a pas besoin d'être mise à jour, et je ne trouve pas comment assurer que cette instance est supprimée lorsqu'elle n'est plus utilisée.