¿Cómo implementar una clase abstracta en ruby?
Sé que no hay un concepto de clase abstracta en ruby. Pero si es necesario implementarlo, ¿cómo hacerlo? Intenté algo como ...
class A
def self.new
raise 'Doh! You are trying to write Java in Ruby!'
end
end
class B < A
...
...
end
Pero cuando intento crear una instancia de B, internamente llamará aA.new
que va a generar la excepción.
Además, los módulos no se pueden instanciar, pero tampoco se pueden heredar. hacer que el nuevo método sea privado tampoco funcionará. ¿Algún indicador?