У свинга действительно есть модель и вид сбоку. Например, в JTable JTable - это представление, а TableModel - это модель. Когда вы создаете JTable, вам нужно передать ему модель либо во время построения, либо с помощью установщика. Затем JTable добавит слушателя в модель, чтобы получать информацию о любых изменениях модели. Вы можете видеть этот слушатель как контроллер.
Однако это не означает, что когда вы используете произвольную комбинацию классов Swing, они автоматически получают информацию об изменениях друг друга. В вашем случае, ярлык, безусловно, не является «моделью» вашего диалога, и между «ярлыком» и диалогом нет такой вещи, как «контроллер». Когда вы вносите такое изменение, вам нужно сообщить диалоговое окно самостоятельно (и, возможно, также добавить метку к вашему диалогу).
О, и я бы порекомендовал изменить ваш setTitle
метод на
public void setTitle( String aTitle ){
super.setTitle( aTittle );
}
или удалите его полностью. Это позволит избежать StackOverflowException