Для чего нужно ключевое слово super?
Как и многие другие ключевые слова,
1. Задать нижнюю границу generic-типа:
2. Обратиться к члену класса-родителя, который перекрыт (shadowed) членами наследника или локальными переменными:
3. Вызвать в конструкторе конструктор родителя:
4. В случае неопределенности, уточнить родительский тип (на картинке)
#Язык
@javatg
Как и многие другие ключевые слова,
super
имеет несколько разных значений в зависимости от контекста:1. Задать нижнюю границу generic-типа:
Consumer<? super Number>
2. Обратиться к члену класса-родителя, который перекрыт (shadowed) членами наследника или локальными переменными:
int foo = super.foo
3. Вызвать в конструкторе конструктор родителя:
SubClass() { super("subclass param"); }
4. В случае неопределенности, уточнить родительский тип (на картинке)
#Язык
@javatg