Buenas, siguiendo un curso de fundamentos de programación, me he enterado que los objetos también pueden ser declaradas como constantes, por lo que he decidido hacer una prueba en Java, que es el lenguaje de programación que mejor controlo. Sin embargo, al hacer la prueba no encuentro ninguna diferencia entre declarar un objeto como constante o como variable. Aquí les dejo el código:
(http://i.imgur.com/pKyoGjL.png)
Buenas.
final en el caso de los objetos no hace que no se lo pueden cambiar los valores, si no que lo que no te permitirá es cambiar el valor de referencia, es decir no te dejará apuntar a otro punto de la memoria, como si fuera un puntero en c.
Prueba en tu código al final, después de imprimir a igualar el segundo objeto al primero y lo imprimes de nuevo. No se si me he explicado bien, pero espero que te sirva.
Saludos
Lo que te está diciendo el compadre rollth es que al declararlo como final ese objeto.
Ya no puedes crear un nuevo identificativo que haga referencia a ese espacio de
memoria.
Te lo voy a explicar en php
//Creamos un objeto
$p=new NombreObjeto()
//Ahora voy a crear un nuevo identificador para ese Objeto $p
$a= $p
//Si yo ahora trabajo el Objeto $a modificaré los atributos en el
espacio de memoria de $p
En tu caso al declarar final el Objeto2 ya no puedes crear nin-
gún identificativo o copia como quieras llamarlo con la cual
podrías modificar los atributos, propiedades en el espacio de
memoria que ocupa el Objeto2.
PD: lo explicado en php es para versiones PHP5 ya que en la
versión PHP4 $a=$p era como crear un __clone de $a en otro
espacio de memoria.
Gracias por read me;