Boxing e Unboxing

.NET

06/01/2016

Confesso que estou com dificuldades em entender até conceitualmente o Boxing e Unboxing, afinal, é encapsulamento ou conversão ou os dois ao mesmo tempo?
Johnny Lucas

Johnny Lucas

Curtidas 0

Melhor post

Edson Venancio

Edson Venancio

07/01/2016

A conversão de um valor de tipo primitivo numérico para um valor de tipo não primitivo numérico
é realizada através de um processo chamado boxing.

A conversão de um valor de tipo não primitivo numérico para um valor de tipo primitivo numérico
é realizada através de um processo chamado unboxing.

Os processos de boxing e unboxing, quando necessários, são realizados de forma automática.
Daí surge o termo autoboxing.
GOSTEI 2

Mais Respostas

Aluisio Cavalcante

Aluisio Cavalcante

06/01/2016

coloca algum exemplo de código.
GOSTEI 0
Johnny Lucas

Johnny Lucas

06/01/2016


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Boxing
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 10;
            object o = (object)a;
            //System.Object

            Console.WriteLine(o.GetType().ToString());

            int b = (int)o;

            System.Type t = b.GetType();
            
            //( (int)o );

            Console.WriteLine();

            Console.WriteLine(b);

            Console.ReadKey();
        }
    }
}


GOSTEI 0
Emilio Neto

Emilio Neto

06/01/2016

Melhor do que explicar, que eu não sei bem explicar, hehehe, te passar esses links:

[url]https://msdn.microsoft.com/pt-br/library/yz2be5wk.aspx[/url]

[url]https://www.devmedia.com.br/boxing-e-unboxing-em-net/6962[/url]
GOSTEI 0
Johnny Lucas

Johnny Lucas

06/01/2016

Olá Emilio, obrigado pelos links. Vou conferi-los.
GOSTEI 0
Emilio Neto

Emilio Neto

06/01/2016

Alguns conceito vai entender mesmo apenas com leitura, se caso seja algo mais especifico pode perguntar.
GOSTEI 0
Edson Venancio

Edson Venancio

06/01/2016

Exemplo:
Na primeira atribuição, o valor literal 1, que é do int, é automaticamente convertido para o tipo Integer. O inverso ocorre na segunda atribuição,
quando o valor armazenado na variável x é automaticamente convertido do tipo Integer para o valor correspondente do tipo int.
Meu exemplo foi em java mas creio que os conceito segue a mesma base..

Integer x = 1; // boxing automático
2
3 int y = x; // unboxing automático

GOSTEI 2
Johnny Lucas

Johnny Lucas

06/01/2016

Desconheço autoboxing, feito automaticamente pela linguagem? Isso é exclusividade do C#?
GOSTEI 0
Edson Venancio

Edson Venancio

06/01/2016

No c# nao tem autoboxing..

Desconsidere o terceiro paragrafo..
GOSTEI 1
Johnny Lucas

Johnny Lucas

06/01/2016

Tudo bem Edson, mas só tem no C# ou no Java tambem?
GOSTEI 0
Edson Venancio

Edson Venancio

06/01/2016

No caso boxing e Unboxing existe nas duas linguagens.

Porem o AutoBoxing existe na linguagem Java. Entendeu ?
GOSTEI 1
Johnny Lucas

Johnny Lucas

06/01/2016

Perfeito, entendi Edson!
GOSTEI 0
Emilio Neto

Emilio Neto

06/01/2016

Gostei da explicação Edson!
GOSTEI 0
Pedro Oliveira

Pedro Oliveira

06/01/2016

Boa aula, mas em inglês.

[url]https://www.youtube.com/watch?v=MzczkEx90b4[/url]
GOSTEI 0
POSTAR