Hallo und

,
die gewünschte Methode bezieht sich eindeutig und ausdrücklich auf ein Rechteck (mehrere konstante Texte weisen darauf hin, und es werden Länge und Breite verwendet); also passt sie in die Klasse Rechteck. Ihr Name soll deutlich machen, was sie tut, also z.B. ConsoleWrite(). Die eigentlichen Inhalte, die ausgegeben werden sollen, sind
innerhalb der Rechteck-Instanz bekannt; sie müssen also nicht als Parameter/Argument übergeben werden. Unklar ist lediglich der Hinweis auf die aktuelle Situation "verschoben um"; diesen Hinweis kann die Klasse nicht aus dem eigenen Status erkennen, er muss also übergeben werden.
Übrigens bin ich ausdrücklich für englische Bezeichner: Das NET Framework macht aus einem deutschen Bezeichner wie MeinFormular schnell einen schlimmen denglischen Mischmasch wie MeinFormular_Load; also bevorzuge ich direkt englische Begriffe, auch wenn ich eigentlich für die Benutzung der deutschen Sprache bin.
Also kommt so etwas heraus:
C#-Quelltext
1: 2: 3: 4: 5:
| public void ConsoleWrite(string state) { Console.WriteLine("\n Rechteck" + state); Console.WriteLine(" X: " + this.X); } |
"this" kann hier (wie fast immer) weggelassen werden; ich habe es nur zur Verdeutlichung geschrieben.
Viel Erfolg! Jürgen