Um mehr Klarheit über meine Frage, wenn Sie ein Array einer bestimmten Klasse erstellen: zum BeispielSind Instanzmethoden für jedes Objekt im Speicher dupliziert?
ExampleClass[] test = new ExampleClass[5];
Ich weiß, dass die fünf ExampleClass
Instanzen für jede Klasse eine Kopie jeder Variable erstellen würde, aber sind die Methoden/Funktionen doppelt im Speicher dupliziert, oder zeigen die einzelnen Tests nur auf die gleiche Codebasis? Wenn es für jede Klasse dupliziert würde, wäre das nur eine Verschwendung von Speicher.
Könnten Sie bitte Code schreiben, die korrekt aussieht? 'ExampleClass test = new test [5]' sieht sehr seltsam aus. –
Das Zuweisen eines Arrays weist keine Klasseninstanzen zu. Unabhängig davon, ob Arrays verwendet werden oder nicht, verwenden mehrere Instanzen einer Klasse denselben ausführbaren Code und dieselben statischen Datenelemente. Nur die _instance_-Datenelemente (d. h. Felder) erhalten neue Kopien für jede Instanz der Klasse. Wenn Sie eine spezifischere Antwort wünschen, posten Sie ein gültiges C# -Codebeispiel und erklären Sie genau, was Sie wissen möchten. Wie es jetzt ist, ist es sehr schwer zu verstehen, was Sie fragen. –