segunda-feira, 6 de fevereiro de 2023

Compreendendo public static void main (String[ ] args) Em Java

Vamos explicar as linhas abaixo no código java:

Em programas Java, o ponto de onde o programa inicia sua execução ou simplesmente o ponto de entrada de programas Java é o método main() . Portanto, é um dos métodos mais importantes de Java e ter uma compreensão adequada dele é muito importante.

Sintaxe mais comum do método main():

 class ProgramandoComJava {
    public static void main(String[] args)
    {
        System.out.println("Eu estou aprendendo Java!")
    }
}

Explicação:
Cada palavra na instrução public static void main possui um significado para a JVM.

1.Público: é um modificador de acesso , que especifica de onde e quem pode acessar o método. Tornar o método main() público o torna globalmente disponível. É tornado público para que a JVM possa invocá-lo de fora da classe, pois não está presente na classe atual.

2.Estático: É uma palavra - chave que quando associada a um método, 
torna-se um método relacionado à classe. O método main() é estático para 
que a JVM possa invocá-lo sem instanciar a classe. Isso também economiza 
o desperdício desnecessário de memória que teria sido usado pelo objeto 
declarado apenas para chamar o método main() pela JVM.

3.Vazio: é uma palavra-chave usada para especificar que um método não retorna nada. Como o método main() não retorna nada, seu tipo de retorno é nulo . Assim que o método main() termina, o programa java termina também. Portanto, não faz sentido retornar do método main() , pois a JVM não pode fazer nada com o valor de retorno dele.
4.main: É o nome do método principal Java. É o identificador que a JVM 
procura como ponto de partida do programa java. Não é uma palavra-chave.

5.String [] args: armazena argumentos de linha de comando Java e é uma 
matriz do tipo classe java.lang.String . Aqui, o nome do array String é args, 
mas não é fixo e o usuário pode usar qualquer nome no lugar dele.

Além da assinatura acima mencionada de main, você pode usar public static void main (String args []) ou public static void main (String… args) para chamar a função principal em java. O método principal é chamado se seu parâmetro formal corresponder ao de um array de Strings.

O método principal pode ser int? Se não, por quê?

class GeeksforGeeks { public static int main(String[] args) { System.out.println("GeeksforGeeks"); } }

Java não retorna int implicitamente, mesmo se declararmos o tipo de retorno de principal como int.
Obteremos erro de tempo de compilação

 erro: declaração de retorno ausente


class GeeksforGeeks {
      
    public static int main(String[] args) {
  
        System.out.println("GeeksforGeeks");
        return 0;
    }

} 

Agora, mesmo se retornarmos 0 ou inteiro explicitamente nós mesmos, de int main.
Recebemos erro de tempo de execução.

Erro: o método principal deve retornar um valor do tipo void na classe GeeksforGeeks, por favor
defina o método principal como:
public static void main (String [] args)

Nenhum comentário:

Postar um comentário