關於swf類庫的理解

2021-05-22 18:24:48 字數 1186 閱讀 7559

swc 的作用 只是 幫助逃過編譯期檢查。swf才作為真正的類庫,其中包含了編譯後的**(類)。但如果,沒有相應的swc,類庫swf中的類不能在其他類中「顯式」地引用(直接通過類名引用,例var f:myfont = new myfont())但也可以用 getdefinitionbyname(存在與swf類庫中的類的類名)方法獲取swf類庫中類的引用

例如:

com.dtedu.myfont 這個類被編譯到了 乙個名為 fontlibrary的swf中。

就可以將 fontlibrary這個swf載入到 需要使用com.dtedu.myfont類的 swf中。

用var fontclass:class = getdefinitionbyname("com.dtedu.myfont") as class 的語句獲得com.dtedu.myfont類的引用。

例2:如果 主程式swf 需要 載入 乙個子swf,而且主程式 swf中還要 用到子swf中的類。

這時有兩種選擇 ,區別主要在編譯階段:

第一種:將 子swf中包含的類 的as檔案 加入類路徑。

這時在編譯主程式swf的時候, 主程式中需要使用的 包含在子swf中的類會被編譯到主程式swf 中。

這樣。同乙個類會同時存在於主程式swf和子程式swf中。這樣有乙個缺點,那就是如果

子程式swf中被主程式swf使用的類被修改後,主程式swf也要重新編譯,這樣才能保證主程式swf 和子程式swf中使用的同乙個類      的統一。 

第二種:在發布 子程式 swf的同時 也同時 發布成swc。

在編譯主程式swf的時候,將swc加入類路徑(swc路徑)

這樣。子程式 中的類就不會被 編譯到 主程式swf中了。

作為 **或視覺化資源的庫swf被載入到主程式swf之後一定要分配乙個引用,不然,當被載入進來的資源失去所有引用,就會被**,使資源不可用了。

在使用 外部載入 的swf中的類定義時,一定不要在 主程式 swf 可以引用到的類路徑中 包含與載入的swf中同名的類。這樣有時候會發生衝突。****

如果在主程式swf 的文件類中,宣告了(以乙個類的名字體別注釋,此類存在於載入進來的swf中)乙個存在於 載入到主程式中的swf中的類的 類變數的 時候,在執行時,flashplayer會 檢查 這個用於 注釋的類 是否有了實際的定義。如果,在檢查時,包含這個用於型別注釋的類的swf還沒有載入完畢,就會報錯:找不到***類(用於型別注釋的類)的定義。

關於Dao類理解

正因如此,我們在dao中的類,他的語句以及思路,應該是圍繞著與資料庫之間的互動展開的。我認為dao中的類的語句可以分為這幾部分 首先,我們需要連線上資料庫 connection conn jdbcutil.getconnection 我們需要乙個sql語句 string sql insert int...

Lua 關於類的理解整理

1.lua 是過程式的語言,本身沒有類的概念。但是lua 是用c實現的,本身很多東西可以拓展,類也是一樣的。2.在lua中,有乙個表的東西,本質上是乙個hashmap,key value 鍵值對這種,如果在map中找不到這個值,就會觸發lua表的一套查詢機制,正是通過這個查詢機制,來實現 類 的操作...

將swf編譯進另一swf中,並使用其中的類

通常情況下,第三方庫是以swc形式存在的,這時,直接就能將swc編譯進我們的專案中。如果第三方提供的不是swc,而是乙個swf,通常的做法是用loader載入這個swf,然後反射,以達到用swf中類的目的。在執行時載入swf,可以使用第三方提供的類,但有沒有更簡單的方法,在編譯期直接將第三方 的sw...