# Unterschied statischer/dynamische Typ einer Variablen



## Han (6. Jun 2006)

Hallo....die Überschrift sagt eigentlich alles....was ist der Unterschied zwischen einem statischen/dynamischen Typ einer Variablen?

Ein statischer Typ in einer Klasse ist ja bsp. static boolean a
Diese Variable ist eine Klassenvariable daher die Überlebensdauer der Variable beträgt solang wie die Klasse existiert. Sie wird wenn ich bsp. ein neues Objekt anlege nicht immer wieder neu initialisiert.

Nicht hingegen bei einem dynamischen Typ (welcher halt ein Objekt einer Klasse einfach ist...)

Hat da wer eine genauere Defnition?

mfg,
Hannes


----------



## Gast (6. Jun 2006)

bin ziemlich schlecht in so erklärungen, drum zwei beispiele...

dynamisch:
EigenerTyp hans = new EigenerTyp();

statisch (wenn der dynamische hans eine statische variable "name" haben sollte:
hans.name = "hans";

der - statische - name kann direkt angesprochen werden (wenn die variable public ist), vom "EigenerTyp" muss jedoch erst ein neues objekt erzeugt werden.

zu deiner andern frage: "hans" wäre dann der name der referenzvariablen. der variablen, die auf das objekt "EigenerTyp" zeigt (oder eben referenziert)...

hilft das?


----------



## Snape (7. Jun 2006)

Eine statische Variable ist eine Klassenvariable, die für jede Instanz (Objekt) dieser Klasse gilt.
Was hier als "dynamische" Variable gemeint ist, wird i.A. Instanzvariable genannt. Der Wert von Instanzvariablen gilt eben nur für die jeweilige Instanz.
Den Begriff Referenzvariable habe ich indes noch nie gehört. :-o


----------

