Ich habe eine einfache Typhierarchie in Scala:
%Vor%Und ich werde diese Typen so benutzen:
%Vor% Überraschenderweise bekomme ich B
gedruckt (ich habe C
erwartet).
Warum behandelt der Compiler C.C1
als Instanz von B.A1
?
Dies ist ein bekannter Fehler.
Scalac erzeugt eine Warnung mit dem -unchecked
Flag:
Jetzt erscheinen B.A1
und C.A1
für den Compiler in der Musterübereinstimmung gleich, weil der äußere Verweis auf B
oder C
nicht überprüft wird.
Sehen Sie sich diese Diskussion an.
Und SI-4440
Tags und Links scala