Ну, Queue
- это интерфейс, так что об этом особо нечего сказать. Там много реализаций и разного поведения. В любом случае, например, ArrayBlockingQueue
имеет распределение памяти, подобное ArrayList
. В любом случае, есть две основные группы (ограниченные и неограниченные), но это действительно будет зависеть от выбранной вами реализации.
О Stack
, распределение памяти также очень похоже на ArrayList
, так как это подклассVector
и это поддерживается массивом.