Ну, если у класса определено значение package a;
, вам необходимо импортировать класс с именем пакета. Если у вас есть два пакета, которые содержат класс с тем же именем, то в вашем классе, который должен вызывать каждый из них, вам нужно будет использовать полностью квалифицированное имя. Например:
import a.Foo;
import b.Foo;
public class Bar
{
public static void main(String[] args)
{
a.Foo aFoo = new a.Foo();
b.Foo bFoo = new b.Foo();
}
}
В качестве альтернативы, если у вас есть два пакета с классами одного и того же имени, вы можете просто пропустить их импорта, а точнее - их использование их полностью квалифицированные имена (FQN-ов).
Если класс не имеет package ...;
, а затем просто импортировать его как:
import Foo;
Однако, если у вас есть два пакета (из разных библиотек), которые содержат классы с одинаковым FQN-х годов, то первый один на пути к классам будет выбран.
Обратите внимание, что соглашение об именах пакетов заключается в использовании строчных букв и для классов - имя должно начинаться с буквы верхнего регистра для каждого слова в имени класса.
Вам даже не нужно импортировать его, если вы этого не хотите, вам просто нужно использовать FQCN. – MikeTheLiar
Зачем вам это нужно? –
Пакет в основном представляет собой папку, содержащую классы. Папки 'A' и' B' * являются * пакетами в вашем примере. – Wyzard