Задачи на обертывание на этом уровне решил, но понимание так и не пришло что делает super в конструкторе если мы создаем поле родителя и уже получаем созданный объект родителя. почему методы нельзя переопределять через super, или можно ? и как? [super.getName()...] чувствую что от меня что то ускользает...
public class TableInterfaceWrapper implements TableInterface {
        TableInterface table;

        TableInterfaceWrapper(TableInterface table) {
            super();
            this.table = table;
        }
:::