public class AmigoOutputStream extends FileOutputStream {
    public static String fileName = "C:/tmp/result.txt";
    private FileOutputStream stream;

    AmigoOutputStream(FileOutputStream stream) throws FileNotFoundException {
        super(stream.toString());
        this.stream=stream;
    }

public static void main(String[] args) throws FileNotFoundException {
        new AmigoOutputStream(new FileOutputStream(fileName));
    }
Что-то я не понимаю,мы создаем объект "обертку" для FileOutputStream,при этом передавая в него уже открытый поток,а потом на следующей строчке(конструктора AmigoOutputStream) вызываем конструктор super(),который открывает 2-ой поток FileOutputStream.Получается у нас будет 2 потока FileOutputStream на один и тот же файл?И куда этот 2 поток сохраняется??