Java - best-practice für die Erstellung von Paket-weiten oder globalen Variablen

Was ist die standard-Vorgehensweise/best practice zum erstellen von Variablen, Programm - oder Paket-Breite in Java?

Möchte ich einige Globale Variablen, die zugänglich sind, die von mehreren Klassen. Beispiele für diese globalen Variablen wäre Dinge wie ein boolean-flag testModeOn, eine Sprache, die Einstellung, aktuelle lokale server, Uhrzeit-Anzeige, format, etc. Nach einigen anderen Fragen (nämlich diese eine) es gibt keine globalen Variablen, aber es gibt einige Workarounds über Schnittstellen (nicht empfohlen?) oder Klassen. Da der ursprüngliche poster nicht erklären, Ihre situation, Sie bekam fast alle Antworten unter der Sonne und ich möchte Sie Fragen, speziell für die Programm-Konfiguration-Variablen.

Ist es besser, eine Klasse zu erstellen/Paket/Schnittstelle und importieren Sie Sie dann in meine working-class/package? Gibt es irgendetwas, was ich beachten sollte, wenn Sie versuchen zu implementieren, die diese Variablen verwenden Sie eine separate Klasse oder Schnittstelle? Gibt es eine andere Möglichkeit, um fudge-Paket-level-Variablen, da Java offensichtlich gar nicht nativ?

HINWEIS: Diese Variablen würde wohl auch nicht ändern, außer wenn das Programm neu kompiliert.

  • Das Singleton-Muster.
  • Von "singleton-pattern", du meinst, ich soll eine Klasse erstellen, die nur je eine Instanz/ein Objekt erstellt?
  • Ja, und diese Klasse enthält Globale Einstellungen, die zugegriffen werden kann durch diese einzelne Klasse. Darüber hinaus werden die singleton kann sich über anhaltenden oder serialisieren Sie die Einstellungen, falls gewünscht.
  • kein Weg ist. Tun Sie nie ein singelton c2.com/cgi/wiki?SingletonsAreEvil und i.stack.imgur.com/Dzdio.png
  • instanziieren eine zweite Instanz." gut, nie gearbeitet, mit real-life-Probleme, die ich übernehmen - manchmal ist es am besten, um etwas durchzusetzen, anstatt "das beste hoffen".
  • Ich bin nicht einverstanden, dass das Singleton-Muster ist hier relevant. Mit static Felder bedeutet, dass keine Objektinstanz erstellt werden muss, daher das Singleton-Objekt noch gar nicht erforderlich.

InformationsquelleAutor Alium Britt | 2014-06-22
Schreibe einen Kommentar