Oulà, ça m'a l'air compliqué ton source, là !
Si je repars du début :
"
je souhaite créer une méthode qui me retournera une valeur pouvant être de différents types (ResultSet ou int)"
La surcharge de méthode n'est pas applicable ici, car elle n'est valab le que lorsque les paramètres diffèrent.
Tu peux renvoyer un "Object", mais c'est un peu crado. Je te donnes quand même comment le faire (***note : j'espère que mes balises "pre" seront interprétées...***). L'astuce est de passer par la classe "Integer" pour renvoyer un entier encapsulé dans un objet :
<pre>
Object maMethode(boolean intReturn) {
if (intReturn) {
return new Integer(100);
}
ResultSet rs = new resultSet();
// Inititalisation de rs
// ...
return rs;
}
</pre>
Pour savoir ce que t'a renvoyé l'appel de "maMethode" :
<pre>
Object resultat = maMethode(...);
if (resultat instanceof Integer) {
int valeur = ((Integer)resultat).intValue();
}
else {
ResultSet rs = (ResultSet)resultat;
}
</pre>
Voilou !

Pour finir, "int" est un type de données et non un objet ! C'est pour cela que tu trouveras des classes correspondant aux types de base (int -> Integer, boolean -> Boolean, etc.).
@+,
-- Nath
NB : "transtyper une fonction", à priori, ça ne veut pas dire grand chose...
