É necessário declarar inteiras de classes aninhadas privadas como privadas?
Depois de 1000s deprivate
pecadoprivate
ocorreu-me que talvez não seja necessário
public class Outer {
private static class Inner { // you may drop static
private void innerMethod() {}
}
}
Existequalquer caso essa quedaprivate
deinnerMethod()
faria diferença naencapsulamento (ouusar, por Outer por exemplo)? Pense também a reflexão
E senão é recomendado abandoná-lo ou mantê-lo em um estilo de codificação visual?
eu dirianão esolta mas não tenho certeza realmente.
EDITAR: acabou de perceber que o caminhoI isso é certamente errado - pelo menos paraInner
'sCampos - declarar esses campos privados e depois usá-los na classe externa - como isso gera ("sintético") acessadores no bytecode - que é pelo menos inchado. Ótimo - agora estou ainda mais interessado em ter uma conta sobre as implicações de segurança de declará-las (Inner
Campos, métodos usados emOuter
) pacote privado (ou público como @JBNizet diz nos comentários)