Klassenvariablen & Instanzvariablen

  • Themenstarter Themenstarter Gelöschtes Mitglied 54019
  • Beginndatum Beginndatum
G

Gelöschtes Mitglied 54019

Gast
Folgende Frage liegt vor: Können eine Klassenvariable und eine Instanzvariablen vom selben Typs den gleichen Wert annehmen?

Mein Gedanke war Nein, denn eine Klassenvariable gilt ja auch für alle Instanzen der Klasse, und wenn diese selben Wert und selben Typ haben, dann kommt man doch irgendwie durcheinander?! Hier hakt es noch bei mir, kann jemand helfen?

Viele Grüße
JavaXava
 
Natürlich geht das:
Java:
class Test {
  static Object staticObj = new Object();
  Object obj = staticObj;
}
Oder meinst du etwas anderes?
 
okay, also es geht heißt im Sinne von der Compiler würde es compilieren?
Aber ist es denn sinnvoll überhaupt?

LG
 
Es würde kompilieren und auch beim ausführen gibt es keine Probleme.
Es gibt immer Fälle für die es sinnvoll sein kann. Beispielsweise könnte die statische Variable eine Art defaultwert anbieten, jede Instanz nimmt diesen Wert erstmal und kann bei Bedarf auch den eigenen Wert ändern.
Java:
class Test {
  public static final SomeObject DEFAULT = new SomeObject();
  private SomeObject value = DEFAULT;
}
 

Zurück
Oben