Recientemente me encontré con un código en el que los desarrolladores usaban nombres de clase totalmente calificados Y nombres de clase importados en su código fuente.
Ejemplo:
import packageA.Foo;
public class Example {
public packageB.Bar doSomething() {
final Foo foo = new Foo();
...
}
}
Tenía la impresión de que la única razón por la que uno podría desear usar un nombre completo para las clases en el código fuente es cuando tienen nombres de clase idénticos en dos paquetes diferentes y necesitan el nombre completo para distinguir entre los dos. ¿Me equivoco?