Rubyの super は、子クラスでメソッドをオーバーライドした際、そのメソッドの中から親クラスの同名のメソッドを呼び出す ためのキーワードです。
この super の主な特徴は、引数の渡し方 を細かく制御できる点です。
super とだけ記述すると、現在のメソッドが受け取った引数すべて が、そのまま親クラスのメソッドに自動的に渡されます。
これが最も一般的な使い方です。
super() と空の括弧を付けて記述すると、親クラスのメソッドは 引数なし で呼び出されます。
super(a, b) のように引数を指定して記述すると、指定された引数のみが親クラスのメソッドに渡されます。
これにより、親クラスの基本的な機能を再利用しつつ、子クラスで新しい処理を追加したり、引数を加工して渡したりする、柔軟なコーディングが可能になります。