Remplacement de toString() qui rend l'utilisation de l'substituée toString()

Fondamentalement, ce est ce que je suis en train de réaliser.

classname adresse@(?)[original toString()], nom de l'objet, de l'objet de l'âge

@Override public String toString()
{
return String.format("%s , %s , %d", this.toString(), this.getName(),this.getAge());
}

Problème, toString() est appelée récursivement.

Je ne peux pas appeler super.toString() parce que ce n'est pas ce que je veux. Je veux ' this " pour appeler l'original toString().

Ce

this.super.toString() 

ne fonctionne pas pour des raisons évidentes.

Je suis à court de vapeur, cela peut-être fait une fois qu'une méthode est surchargée? I. e. appel à la mise en œuvre d'origine ?

(mon edit) Fondamentalement, ce que j'ai besoin est: remplacer toString pour afficher deux propriétés de 'cette' objet, et je veux aussi avoir " l'appel de l'original toString.

Ce n'est pas un projet , ou de travail. Juste à jouer(en apprentissage) avec le langage Java. Grâce

  • Si vous remplacez la toString() méthode, puis il n'y a pas d'autre mise en œuvre de celui que vous avez créer. Quel est exactement le problème avec l'appel de super.toString()?
  • Avez-vous essayé super.toString() (sans le this)?
  • Un double possible stackoverflow.com/questions/586363/...
  • Par l'original toString(), voulez-vous dire une version précédente de cette méthode exacte dans cette même classe, ou les toString() de la classe mère?
  • Vous dites que vous ne souhaitez pas appeler super.toString(), vous voulez que l'instance d'appel super.toString() ... si vous avez le toString() remplacé l'appel de la méthode super.toString (), alors vous avez de l'instance d'appel de l'implémentation de base. Soit vous êtes en essayant de décrire quelque autre effet souhaité ou tout simplement de battre votre tête au-dessus de rien.
  • Z ,@ Matthew Cox Oui je veux bien le toString de la classe mère. Je pense que j'ai juste besoin de super.toString() mais je l'ai essayé et je ne pense pas que cela a fonctionné. Je vais tester à nouveau.

InformationsquelleAutor Marin | 2011-12-12