Вероятно, рекомендуется объявить сначала JLabel
, как вы упомянули, но ответить на ваш вопрос ...
Метод getComponent(int)
возвращает java.awt.Component
, а неJComponent
(ни JLabel
). Component
не имеет такого метода setAlignmentX
(у него есть только геттер).
Предположим, вы уверены, что компонент, который вы получаете, - JLabel
, вам придется его разыграть:
((JLabel)testPanel.getComponent(0)).setAlignmentX(Component.CENTER_ALIGNMENT);
Вы могли бы видеть, что универсализация этого необходимого приведения повсюду будет менее удобной, чем простое объявление JLabel
первым.