Salut à tous !
J'aimerai pouvoir utiliser la reflexion sur le type de retour de méthode afin de rendre plus générique les méthodes getObjetSuivant() et getTousLesObjets().
Voici le code:
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
| import java.io.*;
import java.util.*;
public class DeserialisationObjets{
// Attributs
Class classe;
FileInputStream fis;
ObjectInputStream ois;
// Constructeur
public DeserialisationObjets(String URL, String classe) throws FileNotFoundException,
ClassNotFoundException,
IOException {
this.classe = Class.forName(classe);
fis = new FileInputStream(URL);
ois = new ObjectInputStream(fis);
}
//==========================================================================
// Méthodes
public classe.getName() getObjetSuivant() throws IOException {
classe.getName() objet = (classe.getName()) ois.readObject();
return objet;
}
//==========================================================================
public Vector getTousLesObjets() throws IOException{
classe.getName() objet = null;
Vector totaliteObjets = new Vector();
while( objet = getObjetSuivant() !=null ){
totaliteObjets.addElement(objet);
}
return totaliteObjets;
}
//==========================================================================
public void cloreLeFlux(){
ois.close();
}
public void reOuvrirLeFlux(){
ois = new ObjectInputStream(fis);
}
//==========================================================================
} |
bien entendu, cela ne marche pas
les lignes directement incriminée sont :
classe.getName() objet = (classe.getName()) ois.readObject();
public classe.getName() getObjetSuivant() throws IOException {
classe.getName() objet = null;
Peut être pourrez vous me guider vers le comportement à adopter face à cette situation afin de pouvoir fixer un type générique à une variable ainsi qu'à une valeur de retour de méthode.
J'aimerai également savoir si vous trouvez "sale" cette façon de fonctionner ou non.
Merci à tous.
Partager