1.7
Nome do tipo público e nome do arquivo
Um tipo declarado como public deve obrigatoriamente ter o mesmo nome do arquivo em que está definido. Essa convenção não é apenas uma boa prática, mas uma regra imposta pelo compilador para garantir consistência e previsibilidade na organização do código.
Exemplo conceitual
public class User {
}
Explicação linha a linha
public class User {
Declara um tipo de alto nível público chamado User. Como a classe é public, o arquivo que contém esse código deve se chamar User.java.
}
Encerra a definição da classe.
Se o nome do arquivo não corresponder ao nome do tipo público, o código não será compilado. Esse mecanismo simplifica a localização de tipos e facilita a navegação em projetos Java maiores.