Ответ 1
Когда вы вызываете super
без аргументов, Ruby отправляет сообщение родительскому объекту текущего объекта, запрашивая его вызывать метод с тем же именем, что и вы вызывали super
, а также аргументы, которые были переданному этому методу.
С другой стороны, при вызове с super()
он не отправляет аргументы родителям.
Если аргументы, которые у вас есть, не соответствуют ожидаемому родительскому объекту, я бы сказал, что вы бы хотели использовать super()
или явно указать параметры в функциональном вызове для соответствия допустимому родительскому конструктору.