So' uma coisa, o que eu estou falando aqui e' a minha opiniao pessoal e de maneira nenhuma opiniao da Microsoft. Coisa de americano.
> Moçada, > > Estava dando uma olhada na lista de vocês pra matar > um > pouco da saudade do Brasil. Talvez alguns de vocês > me > conheçam, eu costumava trabalhar na MS Brasil e > atualmente eu trabalho aqui em Redmond em MSDN. O > Einar com certeza se lembra de mim e ele pode até > confirmar que eu não sou tão xiita em relação a > trabalhar na Microsoft. > > Entretanto, não acho que o Mauro falou algo errado > na > comparação com Java. Eu admito que não sou > especialista em Java, mas acho que dá para discutir, > ou na pior das hipóteses, aprender um pouco. > > Por exemplo, em C#, para declarar uma propriedade > você > faz algo como > > class Teste > { > bool enabled; > Teste() // Constructor > { > } > > // declaracao da propriedade > // note que a sintaxe e' especifica > // para declarar uma propriedade > bool Enabled > { > get { return this.enabled; } > set { this.enabled = value; } > } > } > > Em Java, isso depende de voce escrever dois metodos > diferentes respeitando uma convenção de nomes Get e > Set, certo? Na minha opinião isso é uma padronização > entre os ambientes de desenvolvimento que foram > modelados após o JBuilder do que algo na > especificação > da linguagem propriamente dita. Nada me impede de > criar um ambiente de desenvolvimento que exija > métodos > com nomes como Pegar e Setar. > > A mesma coisa se aplica ao enum. Existe uma sintaxe > específica para se declarar enums em C#. > > O .NET Framework, pelo jeito, de maneira similar a > Java implementa enums usando uma classe: > > public abstract class Enum : IComparable, > IFormattable, > IConvertible > > Entretanto, quando você usa o .NET Framework a > partir > de C#, você tem uma sintaxe apropriada para usar a > classe Enum. O compilador, por trás faz a > implementação para você: > > enum Days {Sat=1, Sun, Mon, Tue, Wed, Thu, Fri}; > > e você pode fazer coisas como: > > Days d; > if(d == Days.Sun) { MessageBox.Show("Domingão do > Faustão); } > > repare no d == Days.Sun. Não sei como isso funciona > em > Java, mas se você tem apenas uma classe Enum, ao > invés > de suporte nativo na linguagem, você precisa > explicitamente derivar da classe Enum e definir > membros para Sun, Mon, Tue, e por aí vai, ou então a > > classe Enum tem que implementar isso através de > comparações de String. > > Bom, se vocês quiserem discutir o que está de errado > no artigo, mandem as perguntas. Vou ter o maior > prazer > em responder. > > Agora existem uma série de outras coisas que não > existem em Java. Tipo boxing e unboxing: int e char > poderem ser tratados como instâncias da classe > Object, > sem perda de performance ou necessidade de escrever > uma classe wrapper para por exemplo, adicionar num > collection que aceita Objects. > > Marcelo Uemura > Software Design Engineer - MSDN > Microsoft Corporation > > __________________________________________________ > Do You Yahoo!? > NEW from Yahoo! GeoCities - quick and easy web site > hosting, just $8.95/month. > http://geocities.yahoo.com/ps/info1 > __________________________________________________ Do You Yahoo!? NEW from Yahoo! GeoCities - quick and easy web site hosting, just $8.95/month. http://geocities.yahoo.com/ps/info1 ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------