Java匿名內部類可以訪問外部類的成員;若訪問所在方法的成員,那個成員必須具有final屬性

先上圖 圖中匿名內部類實現的監聽器若訪問所在成員方法onCreated中的editText變量,editText必須就有final屬性,因爲多線程的生命週期問題。onCreate所在線程可能早結束於匿名內部類實現的監聽器,導致editText變量的生命週期也結束了。而監聽器還在工作,它要訪問editText怎麼辦呢?那就需要editText具有final屬性,值不允許改變,監聽器訪問的是複製過來的
相關文章
相關標籤/搜索