Martin Kuba napsal(a): > To je zajímavé, na Linuxu to v kódu je - ten řádek 22 s checkcast:
Tak jsem si přečetl specifikaci na http://java.sun.com/docs/books/jls/third_edition/html/statements.html#259170 a myslím, že na Linuxu je to špatně. Specifikace totiž říká jasně, že for (Object object : list) { } se má rozepsat jako for(Iterator<Employee> i = list.iterator();i.hasNext();) { Object object = i.next(); } ale když obě varianty přeložím a podívám se na vygenerovaný bytekód, tak se liší práve o ten checkcast. Takže překladač rozepíše takto: for(Iterator<Employee> i = list.iterator();i.hasNext();) { Object object = (Employee) i.next(); } což neodpovídá specifikaci. Makub -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Supercomputing Center Brno Martin Kuba Institute of Computer Science email: [email protected] Masaryk University http://www.ics.muni.cz/~makub/ Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775 --------------------------------------------------------------
