Frage

Ist jemand bewusst eine Bibliothek, die die Techniken (Anmerkungen und classworking) verwendet, beschrieben in dieser Artikel automatisch die Standard-Objektmethoden toString Erzeugung (), equals () und hashCode () für Standard-Java-Klassen?

War es hilfreich?

Lösung

Ja, Projekt Lombok tut dies. Siehe http://projectlombok.org . Es unterstützt nicht nur javac, sondern auch Schatten zu stellen. So sind die Methoden nicht im Quellcode, sondern werden in der Gliederungsansicht angezeigt wird.

Andere Tipps

Ich habe schon gar nicht gesehen, und ich bin nicht wirklich sicher, welcher Wert würde daraus gewonnen werden. Ich finde, dass die automatische toString Generation nicht in der Regel ist das, was Sie wollen , wenn Protokolldateien Scheuern und die meisten IDEs werden Werkzeuge, damit Sie hashCode und equals Implementierungen erzeugen, auch wenn diese nicht automatisch alle Schemaänderungen innerhalb reflektieren räumt Ihre Klasse.

Es wäre 2 Möglichkeiten für die Umsetzung dieses:

  1. Compiler-Klasse Anmerkung, die (beispielsweise durch Ihre IDE) verarbeitet wird, die entsprechenden Methoden zu erzeugen. Kann Anmerkungen des erzeugten Bytecode der Klassen ändern sie in deklariert sind? Ich denke, das appraoch eine wirklich schlechte Idee ist, denn man kann nicht sagen, was durch einen Blick auf den Quellcode los ist
  2. Runtime Anmerkung auf den einschlägigen Methoden, um anzuzeigen, dass sie über den speziellen Mechanismus ausgewertet werden soll. Dies erfordert, dass Sie immer noch zu erklären und Ihre Methoden mit Anmerkungen versehen und ich bin auch nicht sicher, wie würden Sie eigentlich abfangen Methode ruft die Anmerkung auf jedem Fall
  3. verwenden
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top