116 votes

Java a-t-il une instruction using ?

Java dispose-t-il d'une instruction using qui peut être utilisée lors de l'ouverture d'une session dans hibernate ?

En C#, c'est quelque chose comme :

using (var session = new Session())
{


}

Ainsi, l'objet sort de la portée et se ferme automatiquement.

20voto

riwi Points 249

Depuis Java 7, il le fait : http://blogs.oracle.com/darcy/entry/project_coin_updated_arm_spec

La syntaxe pour le code dans la question serait :

try (Session session = new Session())
{
  // do stuff
}

Notez que Session doit implémenter AutoClosable ou l'une de ses (nombreuses) sous-interfaces.

8voto

ChaosPandion Points 37025

Techniquement :

DisposableObject d = null;
try {
    d = new DisposableObject(); 
}
finally {
    if (d != null) {
        d.Dispose();
    }
}

3voto

missingfaktor Points 44003

A partir de maintenant, non.

Cependant, il y a une proposition d'ARM pour Java 7.

2voto

Rich Adams Points 10378

Non, Java n'a pas d'équivalent de déclaration using.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X