Buscar
Social
Ofertas laborales ES
« Soluciones de Infraestructuras Abiertas Orientadas a Servicios | Main | Cuidada comparativa de mecanismos de serialización a XML »
jueves
feb242005

Curiosa incompatibilidad entre el JDK 1.5 y todos los anteriores

A raíz de este interesante post de Javalobby que reflexiona sobre el mito "WORA, Write Once Run Anyware" me he enterado de una curiosa incompatibilidad entre el JDK 1.5 y todos los anteriores, y no se trata de la inevitable inclusión de nuevas palabras reservadas.



Se debe al uso de generics, más concretamente a que ahora la interfaz Comparable ha sido hecha generic, y ahora, por ejemplo, la clase java.math.BigDecimal incrementa la interfaz Comparable<BigDecimal>. Como consecuencia sólo es posible comparar un BigDecimal con otro objeto del mismo tipo empleando el método .compareTo(), mientras que en los JDK anteriores no habría problema en realizar la comparación con cualquier otro objeto, comparación que obviamente devolverá un valor false siempre que el objeto fuese de un tipo distinto a BigDecimal, pero que no generaría ningún tipo de error al compilar o al ejecutar.



Cualquiera que llegue un tiempo trabajando con Java sabe que "WORA" no se cumple al cien por cien, ¿alguien se anima a comentar alguna otra pifia con la que él se haya topado que provocase que se rompiera la compatibilidad hacia atrás de una versión a otra de la plataforma?.

Reader Comments

There are no comments for this journal entry. To create a new comment, use the form below.
Comentarios deshabilitados
Comentarios deshabilitados en esta noticia.