在 mouseClicked 事件中給實例變量 masage 賦值,但在其他類呼叫 getMasage() 時仍獲取到初始值 "123"。
setButton10 的 addListener 可能未正確註冊滑鼠監聽器,導致 mouseClicked 從未執行。masage 聲明為 volatile 或使用 AtomicReference。getMasage() 的對象與註冊監聽器的對象不是同一個實例。// 1. 在 mouseClicked 打斷點或打印日誌,確認是否進入
public void mouseClicked(MouseEvent e) {
System.out.println("mouseClicked triggered");
masage = information.getText();
information.setText(null);
}
// 2. 檢查父類 addListener 實現
// 3. 確認 getMasage() 呼叫的是同一個 setButton11 實例
PropertyChangeSupport 實現標準的 JavaBeans 屬性變更通知。