Duvida sobre o using em c#

Minha duvida dever ser a mais burra possível(estou aprendendo, mas já fazendo algumas coisas com experiencias em outras linguagens), mas tenho procurado e num tenho encontrado algo bem claro;

sempre que procuro por using, sempre encontro a utilização dele em minha classe lá no topo.
o que eu gostaria de saber é.: o uso dele nesta form

using (ConnectionSqlServer conn = new ConnectionSqlServer())
{
   //mais dados
}

significa que estou importando para esta ocasião especial e que após executar todo o código interno ela provável mente irá perder até sua instancia?

Agradeço desde já

Ola

O using vc deve usar com objetos que implementem a interface IDisposable e ao final do bloco o metodo Dispose sera chamado.

é uma forma de evitar aquele finally que fecha o recurso se ele for diferente de nulo, por exemplo.

java tem sintaxe parecida com o Closeable se não me engano.

entendi, obrigado

O que vc falou sobre instancia esta parcialmente certo.

variaveis são visiveis dentro de um bloco léxico ( { e } )

o que vc definiu dentro de um bloco não é visivel foram. saiu do bloco léxico pode ser coletado pelo gc a qq momento ( dependendo das regras, etc ).

em algumas linguagens isso é diferente. Perl tem reference counting então no final a memoria sera desalocada PONTO, C++ tem Smart Pointers que podem dealocar a memoria ( fora criar na head/stack ). os conceitos são importantes e as vezes atingem varias familias de linguagens.

Show de bola, vlw demais