Warum fühlt es sich so falsch an Objekte nicht explizit zerstören zu können?
Deterministische Finalisierung, kennste?
Gründe, die für Destruktoren sprechen:
1) Guter Stil - es wird sofort ersichtlich, wann ein Objekt verworfen wird. Nicht so einfach in Java, weil ein Objekt nicht weiß, was auf es zeigt.
2) Kürzerer Kot - Die einfachste Methode, eine Singleton-Instanz zu resetten, wäre den Konstruktor erneut aufzurufen. Dies ist aber nicht so einfach möglich, ohne zu riskieren, dass ein anderes Objekt eine Referenz auf eben diese Instanz hat - was dann zwei Instanzen zur Folge hätte. Dies erfordert zusätzlichen Boilerplate-Kot in vielen Fällen.
3) Performanz - eigentlich selbsterklärend. Garbage Collection kann gerne optional sein, sollte aber nicht forciert werden.
LG BRENT
>1)
Lerne inzu try-with-resources.
>2)
Was zum Fick redest du da?
>3)
Komm wieder, wenn du davon tatsächlich betroffen bist.
Die Argumente sind einfach falsch.
>>9922
>2017
>unironisch das Singleton pattern verwenden
>>9950
> >unironisch das Singleton pattern verwenden
Was ist so schlimm mit ihm?
>>9951
Nichts ist schlimm mit dem Singleton pattern. Der Umstand, DASS du ihn benutzt legt nahe, dass du Software design lernen solltest, da du sehr wahrscheinlich richtig schlimme Entscheidungen triffst, wenn du glaubst, dass du ihn brauchst
>>9956
Ok. Meine Datenbankabstraktionsgeschichte ist immer ein Singleton. Ich muss wohl nochmal in der Schule hin und lernen. m(