Also: Eine "import"-Deklaration (kein Befehl oder Statement) dient lediglich dazu, dem Java-Compiler zu helfen, nicht-vollqualifizierte Typnamen aufzulösen. Zur Laufzeit gibt es keine "imports" mehr und sie tun zur Laufzeit auch nichts. In der JVM existieren nur vollqualifizierte Typnamen wie etwa java.lang.Object, java.util.List, java.sql.Statement oder java.awt.Frame. Will man nun aber diese Typnamen nicht immer vollqualifiziert ausschreiben, sondern statt `java.util.List` lieber nur `List` schreiben, muss man einen "import" verwenden.
Ansonsten benötigt man keine imports. Auch nicht, um externe Libraries zu verwenden. Sie sind lediglich "syntaktischer Zucker" und dienen der Bequemlichkeit des Entwicklers.
Man kann, wenn man will, auch sein ganzes Leben lang ohne "import"-Deklarationen programmieren, indem man eben immer alle Typnamen vollqualifiziert ausschreibt.