*   >> Leitura Educação Artigos >> education >> línguas

Como criar um tipo genérico em vb em Vb.net

'Adicionar duas seqüências usando o Gen classe

ga Dim As New Gen (Of String, String) ("Olá", "World!") Console.WriteLine (ga.V1 + ga.V2)

'Adicionar um duplo e um Integer usando a classe Obj ob Dim obj = New Obj (10.125 de 2005) Console.WriteLine (CType (ob.V1, Double) + CType (ob.V2, Integer))

'Adicionar um duplo e um Integer usando a classe Gen gb Dim As New Gen (da dupla, Integer) (10.125 de 2005) Console.WriteLine (gb.V1 + gb.V2)

//C #

//Adicione duas seqüências usando a classe Obj Obj oa = new Obj ("Olá", "World!"); Console.

WriteLine ((string) oa.t + (string) oa.u);

//Adicionar duas seqüências usando a classe Gen

Gen Gen ga = new ("Olá" , "Mundo!"); Console.WriteLine (ga.t + ga.u);

//Adicionar um duplo e um int usando a classe Obj Obj ob = new Obj (10.125 de 2005); Console.WriteLine ((duplo) ob.t + (int) ob.u);

//Adicionar um duplo e um int usando a classe Gen

Gen Gen gb = new (10.125 , 2005); Console.WriteLine (gb.t + gb.u);

Se você executar esse código em um aplicativo de console, as classes Obj e Gen produzir exatamente os mesmos resultados.

No entanto, o código que usa a classe Gen realmente funciona mais rápido porque ele não exige boxing e unboxing de e para a classe Object. (Boxing e unboxing são discutidos na seção "Quais são Boxing e Unboxing?", Mais adiante neste capítulo.) Além disso, os desenvolvedores teriam um tempo muito mais fácil usando a classe Gen. Primeiro, os desenvolvedores não teria de lançar manualmente a partir da classe de objeto para os tipos apropriados. Em segundo lugar, erros de tipo seria pego em tempo de compilação ao invés de em tempo de execução.

Para demonstrar esse benefício, considere o seguinte código, que contém um erro (mostradas em negrito):

'VB

' Adicionar um duplo e um número inteiro usando a classe Gen gb Dim As New Gen (da dupla, Integer) (10.125 de 2005) Console.WriteLine (gb.V1 + gb.V2)

'Adicionar um duplo e um número inteiro usando a classe Obj ob Dim obj = New Obj (10.125, 2005) Console.WriteLine (CType (ob.V1, Integer) + CType (ob.V2, Integer))

//C #

//Adicionar um duplo e um int usando o Gen classe

Gen Gen gc = new (10.125 de 2005); Console.WriteLine (gc.t + gc.

u);

//Adicionar um duplo e um int usando a classe Obj Obj oc = new Obj (10.125 de 2005); Console.WriteLine ((int) oc.t + (int) oc.u);

A última linha no exemplo de códig

Page   <<  [1] [2] [3] >>
Copyright © 2008 - 2016 Leitura Educação Artigos,https://artigos.nmjjxx.com All rights reserved.