C# - Anfänger sucht Hilfe, Gültigkeitsbereich der Variablen
-
Hallo,
habe gerade mit C# angefangen, programmiere bisher ausschließlich C.
In meinem Buch sind einige Übungen, die sich auch mit Klassen und Vererbung beschäftigen, meistens wird durch betätigen eines Buttons der Text in einem Label geändert.Die Klassen werden aber nur in der Routine "Click" des Buttons angelegt und sind dann ja auch nur hier bekannt. Wie wird das dann gemacht, dass zum Beispiel bei zwei vorhandenen Buttons die vorher Instanzierte Klasse noch bekannt ist.
Oder wie wird die Klasse angelegt um im gesamten NameSpace bekannt zu sein.
Ich hoffe ich hab mich verständlich ausgedrückt.
Vielen Dank für eure Hilfe.....
-
Der Gültigkeitsbereich der Variablen ist in C# genau so wie in C.
leyden schrieb:
Ich hoffe ich hab mich verständlich ausgedrückt.
Nicht wirklich.
Und ganz sicher hast du dich nicht korrekt ausgedrückt.Bring doch einfach mal ein Code-Beispiel, dann sehen wir worum es konkret geht, und können dir auch sagen wie die Dinge wirklich heissen von denen du da sprichst.
Du schreibst z.B. oft "Klassen", wo du - vermutlich - Objekte meinst. Aber eben nur vermutlich, und ich hab keine Lust zu raten.
Und was du mit "wie wird die Klasse angelegt um im gesamten NameSpace bekannt zu sein" meinst entzieht sich mir völlig.
-
ALso versuch ich es mal:
namespace Vererbung { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { pkw Fahrzeug_A = new pkw(); Fahrzeug Fahrzeug_B = new Fahrzeug(); Fahrzeug_B.beschleunigen(35); lblAnzeige.Text = Fahrzeug_B.ausgabe(); lblAnzeige.Text += "\n" + Fahrzeug_A.ausgabe(); Fahrzeug_A.einsteigen(3); Fahrzeug_A.beschleunigen(30); lblAnzeige.Text += "\n" + Fahrzeug_A.ausgabe(); } } }
In der Methode private void button1_Click(object sender, EventArgs e) werden zwei Fahrzeuge angelegt. Die beiden Fahrzeige sind auch nur innerhalb dieser Methode bekannt.
Würde ich nun in meinem Form einen weiteren Button einfügen, der auch mit diesen beiden Fahrzeugen arbeiten sollte geht das ja nicht.
Die Frage ist nun, wie lege ich die Fahrzeuge an, damit diese auch in anderen Methoden bekannt sind.
-
Als Member Variabeln:
namespace Vererbung { public partial class Form1 : Form { private pkw Fahrzeug_A = new pkw(); private Fahrzeug Fahrzeug_B = new Fahrzeug(); public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { Fahrzeug_B.beschleunigen(35); lblAnzeige.Text = Fahrzeug_B.ausgabe(); lblAnzeige.Text += "\n" + Fahrzeug_A.ausgabe(); Fahrzeug_A.einsteigen(3); Fahrzeug_A.beschleunigen(30); lblAnzeige.Text += "\n" + Fahrzeug_A.ausgabe(); } } }
-
Vielen Dank