Questao de Prova do concurso do TRT sobre Java

Salve a todos do GUJ!

Domingo passado fui fazer a prova do TRT do Ceara.
Infezlimente so caiu uma questao sobre Java, e era a seguinte:

Em Java, main é um método:
(A) abstrato associado à classe e que retorna um valor não vazio.
(B) público associado ao objeto e que retorna um valor não vazio.
© estático associado ao objeto e que retorna um valor vazio.
(D) abstrato associado ao objeto e que retorna um valor não vazio.
(E) estático associado à classe e que retorna um valor vazio.

Marquei a letra E, segundo o gabarito era a questao certa, mas eu acho que essa questao nao tem resposta pois void não retorna valor nenhum.

O que vocês acham?

Até mais pessoal

segundo a interpretação, void e vazio podem ser a mesma coisa.
No caso de String vazia seria “”

ao meu ver não vejo erro não, ta mais para interpretação.

[]'s

Eu concordo com o alanmateus. Pois, teoricamente, se algum método retorna qualquer tipo de valor… este valor poderá ser utilizado posteriormente pelo chamador. E isto não acontece com métodos void.

Andei pesquisando um pouco e achei este site onde contém uma definição bacana sobre void:

"void
A keyword used in Java to indicate a method does not return a value. It is not used to indicate a method requires no parameters… "

E também concordo com o nosso amigo Felagund que vai da interpretação de cada um. A minha neste caso é que void não retorna valor.

Abraço!

Fonte: http://mindprod.com/jgloss/void.html

A rigor, essa questão deveria ser anulada ( :frowning: ), mas se você solicitar a anulação, sendo que você deve ter acertado a resposta segundo o gabarito oficial, todos os seus concorrentes também se beneficiarão da anulação.
Só faça isso se você puder justificar corretamente a ausência de respostas corretas no seu recurso.

tradução para void segundo o google:

noun
vazio
vácuo
espaço vazio
edifício desocupado
adjective
vazio
oco
desabitado
desocupado
sem nada

Talvez se colocassem “sem retorno”, a questão ficasse mais clara. Mas acho que isso não compromete a questão não. Dá pra entender bem o que o vazio significa naquele contexto.

O problema é que antes da palavra VAZIO, rola um “RETORNA UM VALOR” e métodos Void NÂO RETORNAM VALOR ALGUM… hehehehehehe

Cara… fica a teu critério, mas acho que pode ser anulada sim… afinal o contexto de uma prova de pede um conceito em Java…

Para haver um retorno de algo a palavra-chave RETURN se torna obrigatória… tente colocar um return em um método void

Aí aqui neste ponto, antes de afirmar eu resolví testar… Faça: public void testeVoid(){ return; }

Funciona… heheheheheheheheehehehehhe se alguém puder explicar logo o que esse return sem nada faz de verdade… se ele retorna um valor vazio de fato… me confundi… deixei até a mensagem como estava pra verem que os testes foram realizados durante a montagem do tópico…

Vou pesquisar se esse return só tira o método da pilha, ou se de fato algo é retornado e pra quem…

Fui… Depois volto…

Falows :wink:

Na realidade, confunde sim.

Só que se for por eliminatório, é quase óbvio que era a letra E, pois o método main é estático e está associado a classe e não ao objeto.

Porém, também achei estranho esta parte do retorna um valor vazio.

Agora, sobre a afirmação do usuário adriano_si, eu creio que este return no método void, apenas pára a execução do restante do método e não retorna valor nenhum, até porque void não retorna coisa alguma.

Abraço!

Pois é criador…lendo um tópico de C fiquei aina mais encucado se a VM realmente não precisa de um valor de void, mesmo que ele seja inútil para nós… Conceitualmente falando em relação a sintaxe, a afirmaçaão de que void não retorna nada é perfeita… mas…

segue o link: http://forum.clubedohardware.com.br/funcao-return-c/675249?s=6bb30d4d484adee9c40da932fec5e8c5&

Vou continuar pesquisando…

Abraços :wink:

Neste tópico o cara explicou muito bem a função do return em um método void.
Agora basta saber, se isto que ele disse está realmente correto.

Contudo, tem bastante fundamento isto que ele falou.

Também vou dar uma pesquisada sobre isto porque agora fiquei “encucado”.

Abraço!

Oi,

Essa questão está voltada ao retorno da codificação para a jvm/compilador. Por isso a letra E) está correta.

Tchauzin!

De fato, questão realmente pra se debater… Mas acredito também na resposta da moderadora Lina… É possivel que seja a nível de compilador mesmo.

eu achei mau escrito tambem… precisava ficar mais claro!

Oi,

No inicio, achei que a prova foi traduzida de ingles para portugues rsrs

Tchauzin!

O colega acertou a questão, porém qualquer um que tenha errado pode pedir a anulação da mesma.