Boxing e Unboxing em C# CSharp
O C#,
como uma linguagem fortemente tipada, nos remete muitas vezes a precisarmos
fazer conversões entre tipos de dados diferentes, o que chamamos de CAST.
Chamamos de Boxing quando convertemos um tipos de dados "Value Type"
para um "Reference Type". No caso do Unboxing, é exatamente ao
contrário, ou seja, convertemos um tipo de dados "Reference Type"
para um "Value Type".
//Exemplo de Boxing:
int inteiro
= 9966;
object
objeto = (object)inteiro;
//Exemplo
de Unboxing:
object
objeto = 9966;
int
inteiro = (int)objeto;
A prática
de Boxing e Unboxing vem acompanhada de uma sobrecarga muito grande, portanto,
deve ser evitada sempre que possível utilizando sempre os tipos específicos dos
dados que deseja armazenar, sempre que tiver uma variação do tipo de dado a ser
armazenado, uma boa prática é utilizar generics evitando qualquer tipo de
conversão.
Nenhum comentário:
Postar um comentário