2009-10-21 29 views

回答

1

那麼,正如在livedocs中的某處(我認爲)mx_internal被用來標記框架中可能隨時間而改變的東西(顯然他們認爲C#和Java對於棄用的東西是錯誤的)。至於爲什麼這些特定方法被標記爲mx_internal的確切原因只有標記它們的開發人員知道。他們可能會在某一天討論這個問題,結果如下所示:「嘿,我們需要這些方法的訪問權限嗎?」「我不知道,我們希望它們可以被覆蓋嗎?」 「不確定」「好吧,讓我們讓他們mx_internal然後」。有地方應該已被標記保護的方法進行標記mx_internal(或私人這是更糟在某些情況下),而不是許多情況下,這是在Flex框架最討厭的事情之一。

此外,無論您是否需要,都使用mx_internal命名空間,因爲框架中的大多數組件都會導入它,所以如果使用flex框架組件,則您的構建已包含它。

+0

感謝您的答覆 - 我很高興知道我不是一個人在感覺Flex的訪問修飾符是瘋了。另外,並不是我不想加載'mx_internal'命名空間......我只是不想強制我的庫的最終用戶導入mx.core.mx_internal;使用命名空間mx_internal'每次他們想發送我的代碼一個'AsyncToken'(我通過重寫'AsyncToken'來調用它'DeferredResult'來解決這個問題)。 – 2009-10-22 13:54:03

4

如果你建立了這個班你要隱藏的功能正常用戶望而卻步,因爲你不希望他們錯誤地調用方法,但創建它們的內部類需要調用它們,因此做標記他們作爲mx_internal很有道理。

+0

它確實有意義*如果*類別*不打算被「普通用戶」使用*。但除了'apply'方法是'mx_internal'這個事實之外,沒有跡象表明情況是這樣。如果我想編寫一個返回「AsyncToken」的方法,會發生什麼? – 2012-12-07 20:45:06

相關問題