Ребята, подскажите что не так в моем коде. Не до конца понимаю что такое делегирование.
package com.javarush.task.task18.task1813;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class AmigoOutputStream extends FileOutputStream {
//public static String fileName = "D:/result.txt";
public static String fileName = "C:/tmp/result.txt";
FileOutputStream fileOutputStream;
public AmigoOutputStream(FileOutputStream fileOutputStream) throws FileNotFoundException {
super(fileName);
this.fileOutputStream = fileOutputStream;
}
@Override
public void write(int b) throws IOException {
fileOutputStream.write(b);
}
@Override
public void close() throws IOException {
fileOutputStream.flush();
String Str = new String("JavaRush © All rights reserved.");
byte b[] = Str.getBytes();
fileOutputStream.write(b);
fileOutputStream.close();
}
@Override
public void flush() throws IOException {
fileOutputStream.flush();
}
public static void main(String[] args) throws FileNotFoundException {
new AmigoOutputStream(new FileOutputStream(fileName));
}
}