Onde colocar classes internas? [fechadas]
Alguns podem argumentar que este é um candidato à questão menos importante de todos os tempos. No entanto, o estilo do código é um tópico muito importante para mim, e quero garantir que escreva o código de maneira legível - para mim e para a maioria dos desenvolvedores.
É por isso que estou me perguntando onde vocês estão declarando suas classes internas.
Estou seguindo o seguinte esquema de ordenação de métodos, porque é bastante comum:
public void foo() {
usedByFoo();
}
private void usedByFoo() {
}
public void bar() {
}
Eu os ordeno de cima para baixo, todo método o mais próximo possível de onde é usado.
Agora eu poderia fazer o mesmo com classes internas, assim:
class Outer {
private Inner inner;
private class Inner {};
public Outer() {
}
...
}
Eu acho que esse é o estilo mais consistente a seguir, mas também vi pessoas declarando todas as classes internas na parte superior ou inferior do arquivo.
Que estilo devo seguir, dada a minha maneira de ordenar métodos? Qual é a maneira mais comum de fazer isso?