Existe uma confusão entre o entry point e o método principal main.
No Java você pode criar um main para cada classe, então vem a pergunta:
Ué, qual main então será executado?
O que estiver definido no arquivo manifest.txt
As IDEs abstraem essa configuração.
Exemplo no Netbeans
https://www.youtube.com/watch?v=UKXw9ZfqJiM
Nós programadores Java costumamos usar esses vários "mains", como um método de teste para a classe, ou seja, para invocar testes.
Assim, eu criei uma classe minha, ela não é o entry point, no entanto eu crio um método main e então insiro códigos de testes, na IDE eu clico na classe e aperto o botão play, aí roda o main dessa classe.
A IDE costuma marcar com uma setinha as classes que possuem main.