Bitte lesen Sie meinen Artikel Import auf Abruf ist böse
Kurz gesagt, das größte Problem ist, dass Ihr Code abbrechen kann, wenn eine Klasse hinzugefügt. zu einem Paket, das Sie importieren. Zum Beispiel:
import java.awt.*;
import java.util.*;
// ...
List list;
In Java 1.1 war dies in Ordnung; List wurde in java.awt gefunden und es gab keinen Konflikt.
Nehmen wir nun an, Sie checken Ihren perfekt funktionierenden Code ein, und ein Jahr später holt ihn jemand anderes heraus, um ihn zu bearbeiten, und verwendet Java 1.2.
Java 1.2 fügte eine Schnittstelle namens List zu java.util. BOOM! Ein Konflikt. Der perfekt funktionierende Code funktioniert nicht mehr.
Dies ist ein EVIL Sprachfunktion. Es gibt NO Grund, dass Code nicht mehr kompiliert werden sollte, nur weil ein Typ hinzugefügt. zu einem Paket...
Außerdem ist es für den Leser schwer zu erkennen, welches "Foo" Sie verwenden.