Recentemente, deparei com um código em que os desenvolvedores usavam nomes de classes totalmente qualificados E nomes de classes importados em seu código-fonte.
Exemplo:
import packageA.Foo;
public class Example {
public packageB.Bar doSomething() {
final Foo foo = new Foo();
...
}
}
Fiquei com a impressão de que a única razão pela qual alguém pode querer usar nome completo para classes no código-fonte é quando elas têm nomes de classe idênticos em dois pacotes diferentes e precisam do nome completo para distinguir entre os dois. Estou errado?