Petr Balat napsal(a): > Nicméně myslím si že je důležitější vědět jak se generiky mají v plném > kontextu, takže i vlastnosti jvm, proto ten komentář. > Aby se začátečník nespletl např. při kontrole instanceof apod. kde ten > rozdíl mezi runtime a kompilaci je potřeba znát.
Pokud v Javě použijete parametrizovaný typ za instanceof, tak Vás překladač upozorní, že za běhu se bude testovat něco jiného. > Pokud programátor potřebuje pracovat s reflexí tak už tato znalost je > nutná. > > -ano do .net museli přidat koo. a kontra. v gener. protože to nešlo obejít > tak jako v jave (když pomineme warning za předpokladu že programátor musí > znát i výsledek kompilace). > V .NETu je IList<string> a IList<object> jinej typ jak pro kompilátor tak > i > pro virtuální mašinu. Opravdu museli? To nešlo řešit v C# přetypováním? IList<String> s = ...; IList<Object> o = (IList<Object>) s; Dokonce by to mělo být bez warningu, protože typový parametr lze zkontrolovat za běhu. Z.T. -- Zdenek Tronicek FIT CTU in Prague
