La mentira de java

Por José Luis Garrido, el 27 de Marzo del 2017

Buenas lectores, si ya estáis acostumbrados a usar java sabréis que Object incluye dos métodos muy interesantes, equals y clone, pues bien, no son lo que parecen a simple vista.

equals, que recibe un objecto y lo compara con el objeto sobre el que se aplica devuelve true si los dos son iguales, false si no. Por eso hay que usarlo en vez de el famoso == ya que este último compara que los punteros son el mismo, y no el objeto. Sin embargo la implementación de equals es la siguiente.

public boolean equals(Object obj) {
        return (this == obj);
}

Si, usa el doble igual, así que equals si no lo reimplementamos no funcionará con nuestras propias clases, ocurriendo cosas como esta.

La otra perla es clone, que se supone que devuelve un objeto idético al objeto sobre el que se aplica, ahora bien, esta es la realidad.

protected native Object clone() throws CloneNotSupportedException;

Vamos, que está como podía no estarlo. Para empezar ni siquiera hace algo y después lanza una excepción. En la propia documentación dice que

     *The method {@code clone} for class {@code Object} performs a
     * specific cloning operation. First, if the class of this object does
     * not implement the interface {@code Cloneable}, then a
     * {@code CloneNotSupportedException} is thrown.

Así que si quieres que tu objeto se pueda clonar, no olvides implementar la interfaz Cloneable, que digo yo, para que pone clone en Object si necesitabas una interfaz pero bueno, es lo que hay. Tenedlo en cuenta cuando programéis en java.

Nos vemos en el siguiente artículo.

 

¿Te gustó el artículo? Dale like, opina, o comparte ;)

Artículos relacionados

Se necesita tener JavaScript habilitado para poder ver los comentarios de la web.
Dame tu voto en HispaBloggers!
Los +1 gustan ;)

Conoce nuestros otros proyectos personales fácilmente entrando en proyecto.jkanetwork.com



Aprender PHP+mysql fácil - Episodio...
[Info] Apk eliminables y no eliminables...
MIRAI NIKKI , sinopsis y...
[Review+Firm] Movil OCU por menos de...

Blogs recomendados


Preferimos usar medios alternativos a la publicidad para que nuestros servidores sigan en pié. Si tenéis dos minutos, nos alegraría que nos ayudaseis. Hay más formas aparte de sacar de vuestro bolsillo, y las agradecemos. Ayudanos

Coobis

¿Quieres decirnos algo? Mándanos tus ideas y sugerencias por e-mail, facebook, twitter. Estaremos encantados de oirlas :)