Wymaga zasobów implementujących `AutoCloseable`. Zasób jest zamykany automatycznie (nawet przy wyjątku), co zmniejsza boilerplate i zapobiega wyciekom. Jest bezpieczniejsze niż ręczne `finally`.
try (var in = Files.newInputStream(path)) {
return new String(in.readAllBytes(), StandardCharsets.UTF_8);
}Rozwinięcie krótkiej odpowiedzi — co zwykle ma znaczenie w praktyce:
Poniżej dodatkowy przykład (bazuje na tym, co już jest w odpowiedzi):
try (var in = Files.newInputStream(path)) {
return new String(in.readAllBytes(), StandardCharsets.UTF_8);
}