Dario Linsky
Erfahrenes Mitglied
Konsultieren wir doch einfach mal ein Wörterbuch:Was sind denn Variablen, die nicht überschrieben werden können? Konstanten, genau. Oder hast Du schon wieder eine andere Definition?
Variable kommt von variabel, also veränderbar. Konstante kommt von konstant, also gleichbleibend. Alle weiteren Diskussionen darüber sind Blödsinn.
Das ist keine Konstante, sondern eine Präprozessoranweisung, mit der alle Vorkommen von dem Text TRUE im Sourcecode durch 1 (Literal) ersetzt werden, bevor der eigentliche Compiler drüberläuft.#define TRUE 1
Auf statische Variablen einer Klasse kann man nur im Zusammenhang mit der Klasse zugreifen, also nicht einfach von überall. Eine globale Variable kann man auch ohne die Klasse nutzen.Dann als Gegenfrage, was sind dann Variablen, auf die von überall her zugegriffen werden kann?
Gerade du als Smalltalk-Liebhaber solltest dir doch klar darüber sein, dass solche Dinge gerade bei Singleton-Klassen genutzt werden können.
Ganz davon abgesehen sollte man eine Variable nicht als public static deklarieren, sondern nur mit Zugriffsmethoden arbeiten, um sauberes OO-Design auf die Beine zu stellen.
PS: Wegen meinem zusammengehampelten Ausdruck der "globalen Klassenvariable" - damit meinte ich schon eine Membervariable, aber irgendwie fiel mir der Begriff gerade nicht ein.