Я не понял для чего пишут super(fileName) в конструкторе, разве недостаточно что fileName вводится в конструктор FileOutputStream при создании его экземпляра? Зачем дополнительно с супером возиться, я до конца этот момент не понял