[Java] Object.toString

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   -  
choubaka Messages postés 39442 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je voudrais obtenir pour un objet quelconque le résultat de la méthode toString de Object, et ce même si celle-ci est redéfinie. Je voudrais donc un résultat de la forme "classe@reference".

J'ai essayé en invoquant directement la méthode toString, mais cela ne fonctionne pas :

public class Test
{
    public static String reference(Object obj)
    {
        try 
        {
            return (String) Object.class.getDeclaredMethod("toString").invoke(obj);
        }
        catch (Exception e)
        {
            return null;
        }
    }
    
    public static void main(String...args)
    {
        String s = "toto";
        System.out.println(reference(s)); // "toto" :(
    }
}

Plus généralement, je m'interroge sur la possibilité en Java de court-circuiter la redéfinition d'une méthode, pour appeler la méthode initialement définie par une de ses classes mères...

Merci d'avance pour toute suggestion ;-)
A voir également:

2 réponses

choubaka Messages postés 39442 Date d'inscription   Statut Modérateur Dernière intervention   2 105
 
bonjour

Pour appeler une méthode d'une classe supèrieure, il faut utiliser "Super.xxxx()

xxx étant le nom de la méthode
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Quand on construit soi même la classe fille je suis d'accord, en particulier pour les constructeurs, mais comment faire quand elle est déjà créée . Par exemple ici j'ai la classe String qui hérite de Object, mais je ne peux pas faire de super sur mon String, et même si j'héritais de String (ce qui n'est pas possible vu qu'elle est final), le super me renverrait les méthodes de String, et pas d'Object. Et je ne parle même pas de A extends B extends C extends D... comment récupérer D à partir de A ?
0
choubaka Messages postés 39442 Date d'inscription   Statut Modérateur Dernière intervention   2 105
 
vu comme ça ... en effet
0
choubaka Messages postés 39442 Date d'inscription   Statut Modérateur Dernière intervention   2 105
 
c'est ce que j'utilise souvent en Swing mais je ne sais pas tester ici, si ça marcue avec toString
0