Page 1 of 1

Was ist der Unterschied zwischen der Instanziierung eines abgeleiteten Objekts als Basistyp und der Instanziierung als a

Posted: 20 Jan 2025, 18:20
by Guest
Was ist der Unterschied im folgenden Code zwischen der Instanziierung eines Kreises als Typ „Shape“ und eines Rechtecks ​​als Typ „Rechteck“?

Code: Select all

Shape
ist die Basisklasse, Circle und Rechteck sind beide von Shape abgeleitet. Jede Instanziierung wird mit dem kommentiert, was der VS-Code-Debugger als Variableninformationen anzeigt.
Ich bin nicht sicher, ob ich die richtige Terminologie verwende; Ich lerne C# seit etwas mehr als einem Monat, also verzeihen Sie mir, wenn ich es nicht tue.

Code: Select all

var shape = new Shape(); // shape = {Shape}
Shape circle = new Circle();  // circle [Shape] = {Circle}
Rectangle rectangle = new Rectangle(); // rectangle = {rectangle}

class Shape {}
class Circle : Shape {}
class Rectangle : Shape {}