Wenn wir uns die Quelle für valueOf
ansehen, können wir einen Hinweis bekommen:
Quelle von java.lang.Integer Zeilen 638-643:
Es sieht so aus, als ob die Integer-Klasse einen Cache von Integer-Objekten für allgemeine Werte verwaltet. Anstatt jedes Mal, wenn jemand nach valueOf
fragt, ein neues zu erstellen, gibt es nur einen Verweis auf einen bereits vorhandenen zurück. Wenn Sie also Integer.valueOf(1)
mehrmals aufrufen, erhalten Sie jedes Mal das gleiche Objekt zurück (nicht nur äquivalente Objekte).
Das hört sich so an, als ob Sie gebeten wurden, eine Übung zu lösen.
Wenn Sie die Methode zweimal mit demselben Argument aufrufen, kann dasselbe Objekt zurückgeben, wodurch die Speicherbelegung begrenzt wird. Dies entspricht der Definition des Fliegengewichtsmusters.
Tags und Links java design-patterns