Excelente resposta para a quest�o. --- "Dr. Spock" <[EMAIL PROTECTED]> escreveu: > Caro Wagner, > > Para falar a verdade n�o importa muito se � ou > n�o um tipo primitivo. > > A palavra reservada 'void' tem o prop�sito de > indicar, para o > compilador e para o 'runtime', que um m�todo n�o > retorna um par�metro. > S� isso e nada mais do que isso. Contudo, por > simetria e facilidade de > leitura podemos dizer que void � um tipo, mas n�o > queremos > necessariamente dizer que 'void' � um tipo. > > J� a classe 'Void' � uma classe como outra > qualquer. Sabemos que um > tipo primitivo (atrav�s das suas repectivas classes > 'wrapper'), a > interface de uma classe e uma inteface sempre > definem um tipo [1]. > Ent�o, a classe 'Void', apesar de n�o ser poss�vel > instanci�-la (The > Void class is an uninstantiable placeholder class), > define um tipo. Mas, > a verdadeira utilidade da classe 'Void' est� no > conceito de reflex�o > [2]. Reflex�o nos permite ter acesso �s informa��es > de uma classe > (metadados de uma classe) em tempo de execu��o. > Atrav�s da reflex�o � > poss�vel ter informa��es sobre os campos, m�todos e > construtores de uma > classe carregada em mem�ria. Ou seja, em tempo de > execu��o de uma > aplica��o Java, � poss�vel obter informa��es sobre > quais m�todos uma > classe tem e, a partir de um dado m�todo, pode-se > ter acesso aos > par�metros recebidos e retornado por este m�todo. > Para cada par�metro de > entrada do m�todo, � poss�vel saber o seu tipo. O > mesmo tb � poss�vel > para o par�metro de retorno do m�todo. Quando um > m�todo retorna um > objeto fica �bvio qual o tipo retornado (um tipo > primitivo via a sua > classe wrapper, uma classe ou uma interface). E > quando o m�todo n�o > retorna nada? Vc tb precisa saber quando um m�todo > n�o retorna algo > durante o processo de reflex�o de uma classe. Por > simetria, j� que a > reflex�o pode informar o tipo retornado via a > defini��o de uma classe, � > necess�rio ter uma classe que defina um tipo e > indique que o m�todo em > quest�o n�o retorna nada. Neste caso estamos falando > da classe 'Void'. > V�rias informa��es tamb�m podem ser obtidas por > interm�dio da classe > Class [4]. Neste �ltimo caso o processo � chamado de > 'instrospec��o', > mas a classe 'Void' j� n�o � mais necess�ria. > > Para maiores detalhes: > > [1]. > > http://java.sun.com/docs/books/jls/second_edition/html/jTOC.doc.html > http://java.sun.com/docs/books/jls/second_edition/html/classes.doc.html#44365 > http://java.sun.com/docs/books/jls/second_edition/html/interfaces.doc.html#238680 > http://java.sun.com/j2se/1.3/docs/guide/reflection/spec/java-reflection.doc.html#1705 > > [2]. > > http://java.sun.com/j2se/1.3/docs/guide/reflection/index.html > > [3]. > > http://java.sun.com/j2se/1.3/docs/guide/reflection/spec/java-reflectionTOC.doc.html > > [4]. > > http://java.sun.com/j2se/1.3/docs/api/java/lang/Class.html > > � isso a� ... Enjoy ... > []�s > > Spock > > Wagner Menezes wrote: > > Pessoal, > > > > surgiu uma duvida bastante intrigante, se em > alguma prova tiver a > > seguinte questao: > > void eh um tipo primitivo? > > a resposta eh verdadeira ou falsa? > > a duvida surgiu pois no livro "Thinking in Java" > (segunda edicao), > > pagina 68, indica que void eh um tipo primitivo. > > Porem no "The Java Language Specification - > second edition", pagina > > 286, tem: > > "Note that the Java programming language does not > allow a "cast to > > void"�void is not a type�so the traditional C > trick of writing an > > _expression statement such as..." > > e mais ainda na API de Java referente a classe > Void tem o seguinte: > > "The Void class is an uninstantiable placeholder > class to hold a > > reference to the Class object representing the > primitive Java type void." > > fica entao a questao void eh tipo primitivo? > > se void eh tipo primitivo, a classe Void eh uma > Wrapper Class? > > > > > > aguardo respostas, > > > > Wagner > > > > > > > ------------------------------------------------------------------------ > > *Busca Yahoo! <http://br.busca.yahoo.com/>* > > O melhor lugar para encontrar tudo o que voc� > procura na Internet > > > > > ------------------------------ 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 > historico: > http://www.mail-archive.com/java-list%40soujava.org.br > para sair da lista: envie email para > [EMAIL PROTECTED] > ------------------------------------------------------------------------- >
_______________________________________________________________________ Busca Yahoo! O melhor lugar para encontrar tudo o que voc� procura na Internet http://br.busca.yahoo.com/ ------------------------------ 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 historico: http://www.mail-archive.com/java-list%40soujava.org.br para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------
