LP
protected void finalize() throws IOException {
if (fd != null) {
if (fd == FileDescriptor.out || fd == FileDescriptor.err) {
flush();
} else {
close();
}
}
}еще пример :
нужно открыть большой файл, но не освобождать ресурсы сразу же (чтение долгое, выгоднее не закрывать ) . Файл открываете в объекте, на который есть WeakReference? но при этом при нехватке памяти объект все же будет вычищен , чтобы гарантировать корректность - придется и финалайз определить
