Var foi introduzido no C # 3.0 e dynamic foi introduzido no C # 4.0. Quando definimos uma variável como var, significa que não podemos mudar seu tipo de dados após a primeira inicialização. Quando definimos uma variável dynamic significa que podemos mudar seu tipo de dados quantas vezes quisermos durante a execução do programa e tipo de dados em tempo de execução .
class vardynamic { public void show() { var a = "Hello var"; dynamic b = "Hello dynamic"; Console.WriteLine("a: {0}", a); Console.WriteLine("b: {0}", b); //atribuição para inteiro //a = 10; //Console.WriteLine(a); b = 10; Console.WriteLine(b); } }
Na classe acima , Você pode ver que declarei uma variável de cada tipo. Ambas as variáveis são inicializadas como strings.
Você pode ver que eu comentei no código um pedaço onde eu atribuo a variável A e B a troca de tipo de dados para int, porém quando realizo para a variável A o programa dá erro de compilação, pelo mesmo motivo que citei no início do post.
Interessante não é mesmo?
Um grande abraço a todos! 😀