<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.dotnetzone.gr:443/cs/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Java Generics and type erasure</title><link>https://www.dotnetzone.gr:443/cs/blogs/palladin/archive/2006/11/12/20224.aspx</link><description>Πρόσφατα έκανα code review σε ένα Java 1.5 project και βρέθηκα αντιμέτωπος "για άλλη μια φορά" με τα προβλήματα που δημιουργεί το type erasure των Java Generics. Θα παρουσιάσω το πρόβλημα με ένα απλό κομμάτι κώδικα ArrayList&amp;lt;Integer&amp;gt; listOfInteger</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>re: Java Generics and type erasure</title><link>https://www.dotnetzone.gr:443/cs/blogs/palladin/archive/2006/11/12/20224.aspx#34612</link><pubDate>Thu, 30 Aug 2007 21:14:25 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:34612</guid><dc:creator>Δημήτρης Σουφλής</dc:creator><description>&lt;p&gt;Βγάζει όμως warning.&lt;/p&gt;
&lt;p&gt;test.java:7: warning: [unchecked] unchecked call to add(E) as a member of the raw type java.util.ArrayList&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;list.add(new Object());&lt;/p&gt;
&lt;p&gt;Το πρόβλημα εμφανίζεται όταν χρησιμοποιείς &amp;nbsp;παλιό κώδικα που δεν ξέρει από generics, ή reflection. Σε καινούριο κώδικα τα πάντα θα ελεγχθούν από τον compiler.&lt;/p&gt;
&lt;p&gt;Συμφωνώ πάντως ότι το type erasure είναι ένα hack για να μην αλλάξουν το JVM, και όχι μια λύση διαρκείας.&lt;/p&gt;
&lt;p&gt;(dsouflis)&lt;/p&gt;</description></item></channel></rss>