Nein, in der Variable ist natürlich eine TStringList-Instanz, mit allen ihren Funktionen,
aber bei der Variable hat man (ohne einen Cast) auch nur Zugriff auf die öffentlichen Schnittstellen, welche in TStrings verfügbar sind, aber das reicht auch meistens aus.
Folgendes wäre falsch, aber das läst der Compiler eh nicht durch.
Delphi-Quellcode:
var
List: TStringList;
begin
List := TStrings.Create;
Das wäre "formal" richtig, aber hier bemängelt der Compiler dann natürlich zu Recht, daß die erstellte TStrings-Instanz viele abstrakte Methoden enthält.
Delphi-Quellcode:
var
List: TStrings;
begin
List := TStrings.Create;