1.6
Múltiplos tipos em um arquivo fonte
É possível declarar mais de um tipo de alto nível no mesmo arquivo de código-fonte. No entanto, no máximo um desses tipos pode ser declarado como public. Essa regra garante uma associação clara entre o nome do arquivo e o tipo público que ele expõe.
Exemplo conceitual
public class User {
}
class Account {
}
Explicação linha a linha
public class User {
Declara um tipo de alto nível público chamado User. Quando uma classe é public, o nome do arquivo deve obrigatoriamente ser User.java.
}
Encerra a definição da classe User.
class Account {
Declara outro tipo de alto nível no mesmo arquivo, mas sem o modificador public. Esse tipo é visível apenas dentro do mesmo pacote.
}
Encerra a definição da classe Account.
Essa regra influencia diretamente a organização do código e será fundamental ao discutir pacotes e visibilidade.