Veamos qué sucede con objetos que tengan un estado interno que pueda variar.
Definamos un objeto que represente a San Martín, con un atributo con la cantidad de batallas que luchó.
object sanMartin {
var batallas = 0
method batallas(){
return batallas
}
method darBatalla() {
batallas = batallas + 1
}
}
Probá hacer en la consola
var libertador = sanMartin
y por si fuera poco, definí otra variable llamada
donJose
en la que tambíen asignes asanMartin
.Por último, mandale a
sanMartin
el mensajedarBatalla()
.Podés hacer tus propias pruebas y ver qué pasa
libertador.batallas()
donJose.batallas()
sanMartin == libertador
libertador == donJose
¿Por qué? ¡Simple! Ambas variables son referencias que apuntan al mismo objeto, y además, el mismo nombre del objeto es también una referencia obvia al objeto. Existe un único San Martín que es conocido de muchas maneras. La moraleja es que asignar a una variable significa agregar una nueva referencia a un objeto existente.
Tenés que iniciar sesión antes de empezar a enviar tus soluciones