Beispiel:
public class A
{
public static int staticVar;
public int memberVar;
public A()
{
staticVar++;
memberVar++;
}
public static void staticFunc()
{...}
public void memberFunc()
{...}
}
...
A InstanzA=new A();
A InstanzB=new A();
A.staticVar++;
Bei statischen Funktionen verhält es sich so, dass sie nicht auf Member Variablen zugreifen können. Sie sind ja Instanz-unabhängig also können sie auch nicht auf die Variablen einer Instanz zugreifen. Eine statische Funktion im obigen Beispiel könnte die staticVar verändern aber nicht die memberVar. Gültig wären hier folgende Aufrufe:
InstanzA.memberFunc();
InstanzB.memberFunc();
InstanzA.staticFunc();
InstanzB.staticFunc();
A.staticFunc();
Keine Kommentare:
Kommentar veröffentlichen