Описание тега autocloseable

NoneJava.lang.AutoCloseable - это интерфейс, который при реализации классом может использоваться в заявлении try-with-resources. Гарантируется, что объект ресурса / класса закрыт в конце оператора.
3 ответа

Почему блок использования не может безопасно инициализировать переменную?

Почему это дает ошибку компиляции? val autoClosable = MyAutoClosable() var myVar: MyType autoClosable.use { myVar= it.foo() } println(myVar) // Error: Variable 'myVar' must be initialized Может быть, компилятор просто видит { myVar= it.foo() } как ф…
21 июл '17 в 13:19
1 ответ

Определите собственный XMLEventReader для реализации интерфейса Closeable

Я хотел бы использовать попытку с ресурсами с XMLEventReader, Как я узнал, XMLEventReader это просто интерфейс и объект, который я получаю XMLInputFactory.newInstance().createXMLEventReader(stream) из com.sun.xml.internal.stream.XMLEventReaderImpl у…
20 авг '15 в 11:52
3 ответа

Какова новая концепция Autocloseable в блоке try в JDK 1.7

Какова новая концепция Autocloseable в блоке try в JDK 1.7. Это действительно необходимо или просто улучшить что-то в блоке try catch, чтобы сделать его более продвинутым.
08 янв '15 в 08:18
1 ответ

Должен ли AutoCloseable Iterator для вызова ResultSet закрываться от финализатора?

У меня есть итератор, поддерживаемый ResultSet. Мне это нужно для постобработки на уровне строк. Итератор реализует интерфейс AutoCloseable. Соединение остается открытым до тех пор, пока мы не переберем все строки / итерации, прерванные пользователе…
11 мар '15 в 18:31
3 ответа

Почему мы должны как объявлять, так и определять ресурсы в блоке try-with-resource?

try(PrintWriter f = new PrintWriter(new BufferedWriter(new FileWriter("abc.txt")));) {} catch(IOException ex) { ex.printStackTrace(); } Выше работает отлично. Но, когда я делаю PrintWriter f; try(f = new PrintWriter(new BufferedWriter(new FileWriter…
17 окт '13 в 10:06
4 ответа

Почему выборочный блок try-with-resources является необязательным?

Я читал, что catch блок в try-with-resources является необязательным. Я пытался создать Connection объект в блоке try-with-resources без последующего catch блок, только чтобы получить ошибку компилятора из eclipse: "Необработанный тип исключения SQL…
26 авг '14 в 02:18
1 ответ

Почему метод close() ресурса вызывается перед catch в конструкции try-with-resources в Java?

Я случайно понял, что это так. Смотрите этот пример ниже: public class AutoClosableTest { public static void main(String[] args) throws Exception { try (MyClosable instance = new MyClosable()) { if (true) { System.out.println( "try" ); throw new Exc…
31 июл '14 в 10:59
3 ответа

Реализация AutoCloseable - как узнать, произошло ли исключение в блоке try?

У нас есть класс, который мы написали, который открывает соединение с сервером. Когда вы закончите с этим, вы должны либо сказать это commit если все прошло успешно, или скажите это rollback если что-то пошло не так. Так что сейчас у нас есть много …
26 июл '18 в 14:28
1 ответ

Как лучше всего закрывать ресурсы?

У меня есть класс Java, который выделил ресурсы, которые должны быть закрыты. Я действительно не знаю, как обеспечить это, мой текущий подход заключается в реализации интерфейса AutoCloseable, надеясь, что звонящий звонит close() иногда и добавляя b…
30 май '16 в 19:16
1 ответ

Как правильно передать InputStream другому конструктору? (Джава)

В приведенном ниже коде я пытаюсь получить доступ к другому конструктору, который принимает InputStream... Однако мне нужно как-то закрыть этот поток, чтобы избежать утечек ресурсов. Если я попытаюсь сделать попытку ловушки, он будет жаловаться, что…
24 фев '19 в 22:09
1 ответ

Neo4j Водитель в игре

Я использую Java- драйвер Neo4j в своем игровом приложении. В настоящее время я инициализирую новый драйвер для каждого контроллера (т.е. для каждого http-вызова). Когда запускается метод autoclosable close, кажется, он блокирует весь вызов почти на…
1 ответ

Почему Apache CloseableHttpResponse не использует сущность при закрытии?

Глядя на краткое руководство, оно дает следующий пример кода: CloseableHttpClient httpclient = HttpClients.createDefault(); HttpGet httpGet = new HttpGet("http://targethost/homepage"); CloseableHttpResponse response1 = httpclient.execute(httpGet); /…
1 ответ

Try-With Resource, когда AutoCloseable имеет значение null

Как работает функция try-with для AutoCloseable переменные, которые были объявлены null? Я предполагал, что это приведет к исключению нулевого указателя при попытке вызвать close на переменную, но это не проблема: try (BufferedReader br = null){ Sys…
12 фев '16 в 21:04
1 ответ

Как заставить AutoClosable Предупреждение распространяться на вызывающего класса в Java?

Я новичок в интерфейсе AutoClosable Java (но не новичок в Java). Я пытаюсь заставить клиентский код, который запрашивает экземпляр WebDriver закрыть driver после того, как он заканчивает использовать его (вызывая driver.quit()) Я хочу, чтобы способ …
2 ответа

Будет ли PrintWriter без присваивания переменной закрываться после использования?

Является new PrintWriter(ExampleStream).print("Just Something"); такой же как PrintWriter pw = new PrintWriter(ExampleStream); pw.print("Just Something"); pw.close(); Так что PrintWriter закроется?
14 авг '16 в 15:21
1 ответ

Автоматическое закрытие не работает со сканером

package org.test; import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegTest { public static void main(String[] args) throws InterruptedException { String str = readLine("Enter String :"); String …
14 авг '15 в 21:59
1 ответ

Ошибка: проблема при обработке "java/lang/AutoCloseable.class"

Когда я компилирую свой проект, я получаю эту ошибку: обработка проблем java/lang/AutoCloseable.class Пожалуйста, помогите мне разобраться с этим.
08 май '17 в 08:10
2 ответа

Java AutoClosable поведение в функции

У меня есть пример кода здесь. Будет ли FileInputStream, созданный функцией, автоматически закрываться при наличии кода в блоке try/catch для parentFunction? Или он должен быть явно закрыт в самой функции someOtherFunction()? private void parentFunc…
07 дек '16 в 21:14
4 ответа

Что является чистым способом выполнения кода в Java?

Это может быть удобно для определения времени выполнения кода, чтобы вы знали, как много времени займет процесс. Тем не менее, я нахожу общий способ сделать это неаккуратным, поскольку предполагается, что он имеет одинаковые отступы, что затрудняет …
23 окт '18 в 10:23
3 ответа

Ловить ошибки при создании объекта из try-with-resources отдельно от тела

Резюме У меня есть закрытый тип, CloseableClass который может бросить IOError в своем конструкторе, методах и, возможно, даже внутри close, Я хочу использовать try-with-resources и по-прежнему иметь дело с ошибками во время построения, в отличие от …
15 ноя '14 в 07:06