Требуется ли при использовании Java-7 try-with-resources для привязки к переменной? Короче говоря, этот блок кода ...Поведение try-with-resources с закрываемыми параметрами
try (final ObjectInputStream ois = new ObjectInputStream(
new ByteArrayInputStream(data))) {
return ois.readObject();
}
Эквивалент к этому блоку? ...
try (final ByteArrayInputStream in = new ByteArrayInputStream(data);
final ObjectInputStream ois = new ObjectInputStream(in)) {
return ois.readObject();
}
Мое понимание Раздел 14.20.3 о Java Language Specification говорит, что они не являются одинаковыми и ресурсы должны быть назначены. Это было бы удивительно с точки зрения общего использования, и я не могу найти документацию, предупреждающую о шаблоне.
не вернул бы этот объект, удерживая его ссылкой открытым (и, следовательно, не разрешая GC)? – SnakeDoc
@SotiriosDelimanolis вы заметите, что я ссылался на тот же контент в моем вопросе ... –
@AndrewWhite Ха-ха, я думаю, я неправильно понял ваш вопрос. Тавис, кажется, говорит лучше. –