todo método main necessita receber um array de Strings.
Sendo assim se na assinatura do método vc declarar uma String simples public static void main(String arg) ele se torna um método comum.
Mais vc pode declarar um array de várias formas como:
Mas porque toda Main precisa receber um Array de Strings?
E
entanglement
Isso é na verdade apenas um efeito colateral de que programas Java normalmente são carregados pelo “java.exe” (Windows) ou “/usr/bin/java” (Linux, Unix).
Esse “java.exe” ou “/usr/bin/java” requer que o ponto de entrada de um programa Java seja exatamente um método declarado exatamente dessa maneira “public static void main(String[] args)”. Se o java.exe encontrar um método desses, então ele o chama com os argumentos de linha de comando (lembre-se, o Java nasceu no Unix e no Unix é muito importante usar os argumentos de linha de comando - e é por isso que ele funciona desse jeito. Outras linguagens aparentadas com o Java, como é o caso do C e do C++, têm um esquema semelhante. )
Se você tiver uma applet, por exemplo, que é um tipo diferente de programa Java, vai ver que o “Java Plugin” (que é um programa no browser que carrega applets Java) requer um outro tipo de classe (algo que descenda de java.awt.Applet) e alguns pontos especiais de entrada.
EDIT: Quado fui responder não tinha a resposta do entanglement ainda.
drsmachado
É uma definição da linguagem.
As definições do java determinam coisas como a obrigatoriedade de uma classe pública possuir o mesmo nome do arquivo em que ela está.
Há um contrasenso, no que o camarada jweibe disse. O método main irá ser disparado, independente de passarmos o array para ele.
Se você, por exemplo, tiver uma classe java assim
Após compilá-la e executar java OlaMundo o que a JVM entende é que você chama o método main desta classe, a saída será uma caixa de diálogo dizendo ola mundo.
Francini_Pedro
Tenho outra duvida em relação a “public static void main(String[] args)” .
Devo começar a programar antes ou depois desse comando?
Já vi a declaração de variaveis antes, depois…
Eu to começando a programar agora, e peço a compreenção dos programadores mais experientes.
E
entanglement
Tanto faz, nesse caso a ordem não importa.
Francini_Pedro
Obrigada
drsmachado
Francini Pedro:
Tenho outra duvida em relação a “public static void main(String[] args)” .
Devo começar a programar antes ou depois desse comando?
Já vi a declaração de variaveis antes, depois…
Eu to começando a programar agora, e peço a compreenção dos programadores mais experientes.
Bom, respondendo à tua pergunta…
Você começa a programar já ao declarar o package e fazer os imports.
Depois de declarar a classe, você pode inserir quaisquer métodos dentro dela, assim como quaisquer atributos.
Independente de onde esteja, a JVM sabe que existem aqueles métodos e atributos.
O que eu sempre sugiro é que você organize tudo, deixe atributos juntos e métodos bem definidos, claros, coesos.