9
Bitte, können Sie erklären, warum die Ersteller von Guava lieber die Konstruktoren als private definieren und statische Methoden create()
definieren, um Objekte zu erstellen?guava: warum Methoden create() statt Konstruktor?
Buchinhalt ist [online] (http://my.safaribooksonline.com/book/programming/java/9780137150021/creating-and-destroying-objects/ch02lev1sec1) zu. – david
Ich würde den Vorteil hinzufügen, den ich aus der Sicht des Endanwenders am wichtigsten finde: Sie haben einen klareren Namen. 'newHashMapWithCapacity (100)' ist viel klarer als 'new HashMap (100)'. –
@JBNizet: Wir stellen diese Methoden für die JDK-Collection-Implementierungen zur Verfügung, aber für unsere selbst erstellten Collection-Typen haben wir eigentlich keine detaillierteren Fabriknamen als 'create'. (Ich bin mir nicht sicher, ob das genau der richtige Anruf war, genau aus dem Grund, den du beschreibst.) –