Ich verstehe, dass System.setProperty(“key”,”value”)
und System.getProperty(“key”)
zum Speichern und Abrufen von Systemeigenschaften und benutzerdefinierten Eigenschaften verwendet werden. Auf die eingestellten Werte kann überall in der Anwendung zugegriffen werden.System.setProperty oder öffentliche statische Variable?
Auch ist mir bewusst, dass wenn eine Variable public
und static
deklariert wird, wird es zu einer Konstante und ist überall in der Anwendung verfügbar.
Ich möchte von der 2 wissen, die vorteilhaft und eine bessere Option ist. Ein Aspekt, den ich mir vorstellen kann, ist System.setProperty ist nützlich, wenn wir einen Wert in einer XML-Datei [mit $ {key}] abrufen wollen. Das Gleiche kann nicht mit öffentlichen statischen Variablen erreicht werden.
Meine Fragen sind
- Gibt es noch andere Vorteile?
- Welches ist eine bessere Option?
- Auf welchen Szenarien sollte man mit System.setProperty/getProperty und öffentlichen statischen Variablen gehen?
Vielen Dank im Voraus.
Scheint breit, aber IMHO ** nicht ** verwenden Sie 'System.getProperty' auf diese Weise: Wie Sie gesagt haben, können Sie eine Constants-Klasse mit' öffentlichen statischen final'-Variablen erstellen. Sie können auch eine Eigenschaftendatei und 'Map' in ein Objekt mit Schlüsselwert definieren .... –
Danke für Ihre Antwort, ich stimme vollkommen zu, dass wir eine ** Eigenschaften ** Datei oder ** Karte ** [_In tatsächlich verwenden können So habe ich all diese Jahre gemacht. Aber ich sehe keinen konkreten Grund, warum man nicht stattdessen ** System.getProperty ** verwenden sollte. Bitte vorschlagen. Vielen Dank. – Andy
können Sie, aber das ist ein Missverständnis von System.getProperty. Es ** sollte ** verwendet werden, um die Eigenschaften des Systems zu speichern. –