Наконец, как часть обработки исключений, его можно использовать только в операторах Try/Catch и поставляется с блоком операторов, указывающим, что это утверждение в конечном итоге будет выполнено (независимо от того, будет ли выбрано исключение или нет), и часто используется, когда необходимо выпустить ресурсы.
Раньше при написании сканеров частота подключения к базе данных была очень высокой. Иногда данные не обрабатывались хорошо. После того, как была сообщена ошибка SQL, было добавлено исключение, но последующее соединение базы данных не было отключено. Это привело к концу, что количество подключений к базе данных было слишком большим и больше не разрешалось подключаться (поскольку это была личная библиотека, я непосредственно перезапустил). Эта операция освобождения подключения к базе данных может быть выполнена наконец.
Во -первых, давайте посмотрим на код, который не в конце концов (его нельзя запустить напрямую, просто поймите, что это значит)
Connection conn; оператор STMT; try {conn = DriverManager.getConnection (URL, имя пользователя, пароль); stmt = conn.createStatement; String sql = "sql"; // sql stmt.executeupdate (sql); stmt.close (); conn.close ();} catch (Exception e) {e.printstacktrace ();}Когда программа работает нормально, никаких исключений не бросается, нет проблем.
Однако, когда программа бросает исключение (возникает ошибка SQL), оператор в TRY не выполняется, а оператор в уловке выполняется напрямую, что приводит к обычному закрытию подключения к базе данных. Если объем данных становится больше, максимальное количество соединений в базе данных достигает верхнего предела, а новые соединения больше не разрешены.
Тогда полезность наконец может быть отражена сейчас
Соединение conn = null; оператор STMT = null; try {conn = DriverManager.getConnection (URL, имя пользователя, пароль); stmt = conn.createStatement; String sql = "sql"; // sql stmt.executeupdate (sql); stmt.close (); conn.close (); } catch (sqlexception e) {e.printstacktrace (); } наконец {if (stmt! = null) {stmt.close (); } if (conn! = null) {conn.close (); }} Таким образом, даже если SQL запускает ошибку и бросает исключение, а затем вынесет еще одно суждение о подключении к базе данных в конечном коде, он может убедиться, что ресурсы подключения к базе данных не будут потрачены впустую без причины.
Вышеуказанное - это использование, наконец, в Java, представленном вам редактором. Я надеюсь, что это будет полезно для вас. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит вам вовремя. Большое спасибо за вашу поддержку сайту wulin.com!