Помогите, пожалуйста, в голове каша. Зачем в предыдущих задачах, когда мы оборачивали один объект в другой, то надо было в классе-обертке создавать ссылку на оборачиваемый объект, а потом переопределять у него всего методы, чтобы потом ими пользоваться, а тут ссылка не создается и ничего не переопределяется, а пользуемся родительским. Или мы тут вообще ничего не оборачиваем?
package com.javarush.task.task18.task1814;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

/*
UnsupportedFileName
*/

public class TxtInputStream extends FileInputStream {

    public TxtInputStream(String fileName) throws IOException, UnsupportedFileNameException {
        super(fileName);
        if (!fileName.endsWith(".txt")) {
            super.close();
            throw new UnsupportedFileNameException();
        }
    }

    public static void main(String[] args) throws IOException, UnsupportedFileNameException {
    }
}