Herencia de variables de instancia
¿Puede alguien explicar cómo una clase puede acceder a las variables de instancia de su superclase y cómo eso no es herencia? Estoy hablando de 'El lenguaje de programación Ruby' y el ejemplo
class Point
def initialize(x,y) # Initialize method
@x,@y = x, y # Sets initial values for instance variables
end
end
class Point3D < Point
def initialize(x,y,z)
super(x,y)
@z = z
end
def to_s
"(#@x, #@y, #@z)" # Variables @x and @y inherited?
end
end
Point3D.new(1,2,3).to_s => "(1, 2, 3)"
Como puede la clasePoint3D
accesox
yy
dentroto_s
si no son heredados? El libro dice:
"La razón por la que a veces parecen heredarse es que las variables de instancia se crean mediante los métodos que primero les asignan valores, y esos métodos a menudo se heredan o encadenan".
pero no puedo entender lo que realmente significa.