Ma to związek z przejrzystością programu przydatnego do konserwacji.
Gdybyś musiał utrzymywać program, przekonasz się, jak przydatne jest posiadanie jednego importu klasy w każdym wierszu.
Pomyśl o następującym scenariuszu:
import company.billing.*;
import company.humanrerources.*;
// other imports
class SomeClass {
// hundreds or thousands of lines here...
public void veryImportantMethod() {
Customer customer;
Employee comployee;
Department dept.
// do something with them
}
}
Kiedy naprawiasz błędy lub konserwujesz fragment kodu (lub tylko go czytasz), bardzo pomocne dla czytelnika jest wiedzieć, do którego pakietu należą używane klasy. Użycie importu symboli wieloznacznych, jak pokazano powyżej, nie pomaga w tym celu.
Nawet mając IDE, nie chcesz najeżdżać kursorem lub przeskakiwać do deklaracji i zwracać, jest łatwiej, jeśli zrozumiesz pod względem funkcjonalności, od jakich innych pakietów i klas zależy bieżący kod.
Jeśli jest to projekt osobisty lub coś małego, to naprawdę nie ma to znaczenia, ale w przypadku czegoś większego, co musi być używane przez innych programistów (i utrzymywane przez lata), jest to MUSI MIEĆ.
Nie ma absolutnie żadnej różnicy w wydajności.