Ви не можете використовувати класи в пакеті за замовчуванням з названого пакету.
( Технічно ви можете, як показано на Sharique Абдулла відповіді через Reflection API, але класи від безіменного простору імен знаходяться не в обсязі в декларації імпорту )
До J2SE 1.4 ви могли імпортувати класи з пакету за замовчуванням, використовуючи такий синтаксис:
import Unfinished;
Це більше не дозволено . Отже, для доступу до класу пакетів за замовчуванням із упакованого класу потрібно перемістити клас пакунків за замовчуванням у власний пакет.
Якщо у вас є доступ до джерела, згенерованого groovy, потрібна деяка післяобробка, щоб перемістити файл у виділений пакет і додати цю директиву "пакет" на його початку.
Оновлення 2014: помилка 6975015 , для JDK7 і JDK8, описує ще суворіше заборона на імпорт з неназваного пакета.
TypeName
Повинно бути канонічне ім'я типу класу, тип інтерфейсу, перечислимого типу, або типу анотацій.
Тип повинен бути або членом названого пакету , або членом типу, чий зовнішній лексично огороджуючий тип є членом названого пакету , або виникає помилка часу компіляції .
Андреас балів з в коментарях :
"чому в першу чергу існує [пакет за замовчуванням]? Помилка дизайну?"
Ні, це навмисно.
JLS 7.4.2. Безназвані пакети зазначають: "Пакети без назви надаються платформою Java SE в основному для зручності під час розробки невеликих або тимчасових додатків або тільки коли починається розробка".