Todavía no puedo encontrar la manera de hacer un constructor de la subclase siga su padre ...
ejemplo:¿Heredar el método initialize() en ruby?
require 'mechanize'
class Scraper
attr_accessor :agent
def initialize
# I dont know if using instance variable is the right thing to do
@agent = Mechanize.new
end
end
class ScraperA < Scraper
end
Quiero hacer ScraperA
seguir su comportamiento constructor de los padres,
que es crear una instancia de un objeto Mecanizado sin volver a escribir Mechanize.new
en Método ScraperA initialize(). Es posible ?
¿Solo quiero seguir el principio DRY pero el rubí hace que sea difícil para mí ???
Espero que no, tal vez es solo mi ignorancia. Esperando una solución simple, Tnx.
Editar:
resulta que el método() en ScraperA, que anula la inicialización por defecto tuve initialize vacía(). Así que sí, el ejemplo está funcionando, porque no hay un método de inicialización vacío allí. Lo siento por mi estupidez. Tnx.
Su código funciona como usted lo desea. Si ha intentado ejecutar ese código exactamente, es probable que sea porque está usando una versión obsoleta de ruby. – Adrian
@Adrian: No creo que haya ninguna versión de ruby en la que eso no funcione. – sepp2k
¿Por qué se cerró esto como 'Demasiado localizado'? – 0112