Dans Java Try-with-Resources, même si vous retournez dans la clause try, elle sera fermée correctement, alors revenons sans nous inquiéter

Try-Catch-Enfin c'est bien

Vous pouvez voir dans cet article que la clause finally est exécutée correctement lorsque vous revenez dans la clause try de Try-Catch-Then.

À propos du retour dans la clause try-catch-finally

Je l'ai vérifié avec Try-with-Resources

Je doute ici. Try-with-Resources, qui est très similaire en Java, fermera-t-il correctement les ressources? Je l'ai vérifié.

https://github.com/takeo-asai/try-with-resources

public class Main {
    public static void main(String[] args) {
        System.out.println("Begin Main");
        tryWithResources();
        System.out.println("End Main");
    }

    private static void tryWithResources() {
        try (MockConnection connection = new MockConnection();) {
            System.out.println("tryWithResources");
            return;
        }
    }
}
public class MockConnection implements AutoCloseable {
    public void close() {
        System.out.println("MockConnection is closed.");
    }
}
Begin Main
tryWithResources
MockConnection is closed.
End Main

En conclusion, il se fermera correctement, alors utilisons-le dur.

Recommended Posts

Dans Java Try-with-Resources, même si vous retournez dans la clause try, elle sera fermée correctement, alors revenons sans nous inquiéter
Je suis tombé sur la version Java dans Android Studio, je vais donc le résumer
Soyez prudent si vous trouvez SHIFT-JIS en Java
L'aperçu Records publié dans JDK 14 est sympa alors essayons-le avec JShell