Boa tarde,
Pessoal,
Estava lendo o livro de certificação e me veio uma dúvida.
A seguinte frase afirmativa:
“Arquivos que não tenham classe publicas podem ter um nome que não seja o mesmo de nenhuma classe do arquivo”.
Por Exemplo:
Podemos definir uma classe então Animal.java
com os codigos
class Dog{
private String name;
private void actionLatir(){
};
}
class Cat{
private String name;
private void actionMiar(){
};
}
Após a compilação é gerado dois arquivos, Cat.class, e Dog.class. Mais seus o modificador da classe seria Default.
Como os padrões conhecidos são public, protected, private por definição:
http://java.sun.com/docs/books/tutorial/java/javaOO/accesscontrol.html
Este exemplo fugiria um pouco do padrão Java, deixando assim somente as classes acessiveis no pacote,
isso então não seria uma boa escolha de programação Java, mais porém é permitido.
Lembrando que uma classe so pode ser declarada com acesso público ou default.
Alguem poderia me explicar a razão, ou especificar o uso deste tipo de abordagem.
Obrigado