Olá, Jamili,
Caso ainda esteja confuso, uma forma bem simples de entender o tipo do retorno é se perguntar: Eu quero guardar algum valor em uma variável (fora do seu objeto) após invocar esse método? Ou, meu método retorna algum valor que possa ser armazenado em uma variável? Se sim, qual o tipo? Se não, usamos o void. Para saber o que estamos retornando, procure pela palavra-chave return
dentro do seu método. Reparou que ela não está dentro do seu método? Então o retorno é void
, se estivesse return;
também seria void. Qualquer coisa diferente disso, vc teria um erro de compilação se não declarar o tipo apropriado.
Quanto a sua dúvida, acredito que a maior confusão está no uso do System.out.println()
pensando que ele retorna algo (na realidade se olhar na View Declaration do Eclipse verá que usa o void
). Lembre-se: o println
imprimi no console e nada mais, vc não consegue guardar nem usar valor após invocá-lo; então se faça a pergunta, consigo guardar algum valor com esse método? Se sim, qual o tipo, se não o retorno é void.
Tente fazer o seguinte:
public class TesteVoid {
public static void main(Strings[] args) {
System.out.println(System.out.println("Imprimindo no console"));
}
}
Verá que terá um erro de compilação, pois não é possível usar o void onde se usaria uma variável. Seria como usar 'nada' para fazer alguma coisa depois.