Kann mir jemand es so erklären dass ich den Unterschied verstehe..... Wenn ich die Klassenvariablen hund,pfau,adler,hahn direkt nach
"public class MyFrame extends JFrame implements ActionListener" erstelle ODER sie erst nach "MyFrame()" deklariere.
Wenn du sie im Klassen Rumpf erstellst sind es Instanzvariablen und in der gesamten Klasse verfügbar. Klassenrumfp ist der Block Bereich zwischen den Geschweiften Klammern.
Zwischen der Öffnenden und Schließenden.
Wenn du sie in einer Methode machst sind sie nur lokal in der Methode verfügbar. In einer anderen Methode nicht.
Methoden sind auch wider die Blöcke zwischen Klammern.
Auch dein Konstruktor „MyFrame()“ ist eine Methode.
Und beginnt mit der öffnenden Klammer und endet mit dazu gehörigen schließenden Klammer
Ich denke dein Hauptproblem ist das Verständnis von OOP
Java:
public class MyFrame … { // Klassenrumpf
int alter; // Instanzvariable
public MyFrame(){ // Methode Konstruktor
int alter2 = 20; // lokale Variable
alter = 30;
} // Methode ende
} // ende Klasse
Zuletzt bearbeitet:
