Ключевое слово super используется для доступа к членам (свойствам, методам) родительского класса из дочернего класса.
Основные варианты использования:
Вызов конструктора родительского класса: Часто используется в конструкторе дочернего класса для вызова соответствующего конструктора родителя. Это обязательно, если родительский класс имеет первичный конструктор с параметрами.
kotlin
Доступ к членам родительского класса, переопределенным в дочернем: Позволяет обратиться к реализации метода или свойства в родительском классе, даже если они были переопределены (с помощью override) в дочернем.
kotlin
Доступ к членам конкретного супертипа (в случае множественного наследования интерфейсов): Если класс реализует несколько интерфейсов, которые имеют члены с одинаковыми именами, super в сочетании с указанием имени интерфейса в угловых скобках (super<TypeName>) позволяет однозначно указать, к какому члену какого интерфейса обратиться.
kotlin