Если поток был создан локально, обязательно ли его закрывать в конце метода?
public void method() {
FileInputStream fis = new FileInputStream("input.txt");
...
fis.close(); //Необходимо ли это?
}
Обязательно. При создании объект открывается для чтения и система должна знать, когда ресурс станет опять свободным. Также, в случае, если поток окажется не закрыт, может происходить утечка памяти.
Да, нужно закрывать, чтобы не было утечки памяти. Закрывая мы говорим сборщику мусора, что объект можно убирать. Если не хочется закрывать вручную, есть альтернатива: try-с-ресурсами
:
try (FileInputStream fis = new FileInputStream("input.txt")) {
//тут что-то делать с fis.
} catch(IOException e) {
// обработка исключений
} finally {
// финализация чего-либо
}
FileInputStream
будет закрыт автоматически. В самом простом случае от finally
можно отказаться совсем.
Leonis дело говорит. Причем крайне рекомендуется использовать именно try-с-ресурсами
(при Java 7 и выше) вместо закрытия вручную в блоке finally
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Ошибок никаких не выдаёт, просто возвращает nullQuery, посылаемый в базу данных, предполагается в виде Query = "SELECT * FROM users WHERE Login = "Login" AND Password = 12345;
Я разрабатываю свой редактор Web-кода и хочу чтобы при нажатии на определённый файл (а именно html, js, css и txt) открывался редактор (MainActivity) и в EditText...
Подскажите пожалуйста, что делаю неправильноПри запуске программы и ввода данных в форму, в debug значения имени и пароля пустые(фото ниже)