[eside-ghost] Java y punteros!!!

"Jorge García (aka Bardok)" bardok en telefonica.net
Vie Ene 20 10:04:48 CET 2006


Buenas,

>  >  As much as is reasonably practical, the hashCode method defined by 
> class >Object does return distinct integers for distinct objects. (This 
> is typically >implemented by converting the internal address of the 
> object into an inte ger, >but this implementation technique is not 
> required by the Java^TM programming >language.)
> 
>    "the internal address" es la direccion física de memoria? Me toi 
> haciendo un lio yo solo q pa q... xD. Y esa implementacion no es 
> "requerida" por Java? No entiendo muy bien esta frase...En fins si 
> alguien lo ve mas claro q arroje un poco de luz sobre el asunto xD.

sencillo: Java especifica un API que especifica qué tiene que hacer el 
framework, pero no cómo. Tú puedes coger, e implementarlo para PIC, si 
quieres.

En este caso, lo único que te dice es que ese método tiene que devolver 
un identificador único para cada objeto. Tú puedes implementarlo como te 
dé la gana, con unos algoritmos mega-complejos, pero lo que ellos te 
dicen, es que una manera bastante sencilla, será devolver la dirección 
real, nativa, interna, o como la quieras llamar, del objeto en la 
memoria, manejada por el sistema operativo, en forma de entero, porque 
se supone que la única manera de que dos objetos devuelvan el mismo 
identificativo es siendo el mismo objeto. Podrías utilizar otras 
maneras, por ejemplo, asignar a cada objeto un número correlativo, si te 
resulta más cómodo.

Vamos, que no te puedes fiar de que te vaya a devolver la dirección 
interna, en unas implementaciones lo hará, pero en otras no (igual en 
Linux lo hace, pero en MacOS X no). Simplemente, te devolverá un 
identificativo único.

Un abrazo:

	Bdk



Más información sobre la lista de distribución eside-ghost