Denksportaufgabe this/this()
Lässt sich irgendwie als erstes im Konstruktor
this.(ausdruck)
schreiben, um einen Pokal für die schlechteste Zeile Code zu gewinnen?
Lässt sich irgendwie als erstes im Konstruktor
this.(ausdruck)
schreiben, um einen Pokal für die schlechteste Zeile Code zu gewinnen?
3 Kommentare
Marcel_2 ·
Eine "Lösung" mal abgesehen davon, dass ich meinem Vorredner zustimme ist eine statische Methode aufzurufen...: ```java public class Main { public Main() { this.print(); } private static final void print() { System.out.println("Pfui!"); } public static void main(final String\[\] args) { new Main(); } } ```
JVM ·
Die Lösung ist dass jeder Ausdruck welcher nicht eine Zuweisung eines Attributes ist grundsätzlich schlecht ist. Bei einer Klasse welche final ist lässt sich darüber diskutieren ob z.B. der Aufruf einer Methode im Konstruktor "legal" ist. Ein Konstruktor ist da um eine Instanz zu erzeugen und für nix anderes. Der einfache Grund ist das "this" nicht fertig konstrutiert ist sondern "am konstruieren ist". Man Suche auch nach dem Thema "this escape" bei der Suchmaschine seines Vertrauens. Ist nix neues.
Marcel ·
Gibt es dazu jetzt auch irgendeine Lösung?
Die bisherigen Kommentare wurden aus WordPress übernommen. Neue Kommentare sind derzeit geschlossen.