freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

as學習筆記-(自動保存的)(編輯修改稿)

2024-08-31 09:27 本頁面
 

【文章內(nèi)容簡介】 接受;只有在注冊偵聽器后,發(fā)送事件才能被偵聽器接收,而且發(fā)送的事件必須和偵聽器注冊的類型匹配;在actionscript3中package是劃分訪問控制的一個重要的 分界線,同事package也是實現(xiàn)模塊化的一個重要的手段,在邏輯上package是一個邏輯單元,他包含多個具有邏輯聯(lián)系的類,共同對外提供一個或者多個服務,比如,flash。Text包中包含了提供處理文本框,文本格式,樣式,排版等功能的多個類。全飾名稱是指加上package路徑的類名,比如textfiled類的全飾名稱就是flash。Text。textfiled,Actionscript編譯器,在編譯時,會自動將轉(zhuǎn)化為全飾名稱。包的導入是為了讓編譯器通過import語句準確的找到我們的類;Import 包的導入,即使使用全飾名稱也必須要先導入包,比如我們洗完使用textfiled類在swf文件中生成一個動態(tài)的文本框,那么我們必須先要導入textfiled所在的包,使用同一個包內(nèi)的類文件不需要進行導入;當兩個或者多個類文件同名的時候,就容易發(fā)生命名沖突,這是如果沒有將同名分開放在不同的包下,那么編譯器將無法判斷到底要編譯哪一個類,從而產(chǎn)生命名沖突的錯誤,如何解決命名沖突吶?將同名文件放在不同的目錄下面,命名好相應包的路徑,在通過import指令導入某個包的全是路徑,就能命令編譯器準確的導入編譯的那個類;所有的代碼均放在一個包下;在物理表現(xiàn)上,package包是一個目錄,其中包包含一個或者多個類文件,包也可以包含其他的包,稱為子包;如果一個類沒有前面沒有任何訪問控制符,那么將會被默認為internal,目的是封裝package;訪問控制符不僅控制實例屬性和方法而且還對靜態(tài)的屬性和方法也有同樣的作用;Public 完全公開,使用這個控制符 怎是宣告在任何地方,任何對象都可以訪問這個類的成員;Private修飾符,除了當前類的成員所有其他類的方法都不可以訪問該成員,即使是同一個包中的類或者是擴展當前類的子類也是不可以的;對于復雜的數(shù)據(jù)類型的屬性來說,private的封裝只能是說不能通過當前類的實例來訪問,并不意味著這個屬性持有的引用所指對象不能被訪問;Protected 訪問的控制與類的繼承有關,只能被當前類和當前類的子類進行訪問,protected的訪問控制和package沒有關系,即使是當前類和子類不再同一個包中也可以訪問到protected修飾的類成員;Getter 和setter是存取器方法,通過他們來更改私有類成員,這兩種方法是封裝的一種表現(xiàn)形式,他們本質(zhì)上是實例方法,只不過在類的外部將方法作為屬性來訪問,類的外部屬性和類的內(nèi)部屬性具有不同的名稱;ActionScript 提供 getter 和 setter 以存取類的屬性. 在 OOP 編程的角度, 是出于類的封裝性考慮, 類的繼承 (protected) 和私有化 (private) 的屬性不能直接暴露在外, 外部只能通過存取方法訪問和修改.假設現(xiàn)在有一個去理發(fā)的女生, 年齡只有她自己知道, 發(fā)型師可以獲知她的發(fā)質(zhì), 知道并可以改變她的發(fā)型. 那么 ActionScript 類可以定義如下:public class Lady { // 年齡 private var _age:int。 // 發(fā)質(zhì) protected var _hairQuality:String。 public function get hairQuality():String { return 。 } // 發(fā)型 private var _hairStyle:String。 public function get hairStyle():String { return 。 } public function set hairStyle(value:String):void { = value。 } public function Lady() { = 24。 = damaged。 = fashion。 }}由代碼可以看出, 通過存取方法可以選擇性地開放外部對屬性的操作. 存取方法的寫法也與一般的方法寫法不同點在于 get 和 set 關鍵字. 一旦寫為存取方法, 其調(diào)用方式將與常規(guī)方法不同, 將通過點運算符進行操作, 如: == gliding;比如要有返回類型,且應和要訪問的私有屬性的類型一直,必須有返回語句,返回要訪問的私有屬性;類的訪問控制,只有包內(nèi)的訪問控制和公有控制不存在私有類的存在;在一個類文件中可以定義多個類,其中在package包里只可以定義一個類,而且這個類名必須和文件名相同,這個類是對外可見的,然而在package包之外可以定義對個類,這些類與文件名不同,并且只有當前類文件中的成員類可以訪問,這種類成為包外類;我們可以把包外類看成是當前文件的私有類;命名空間。定義是 namespace ball;應用命名空間 ball+普通定義;引用的話是 using naspace ball;要創(chuàng)建一個命名空間,則必須要保證這個命名空間的獨一無二性,這個標識就是namespace的uri,所以要保證uri的唯一性 ,才能保證namespace的唯一性;復合的原理實在新創(chuàng)建的類中有一個或者有多個對象的應用,而這些對象就是現(xiàn)有類的實例,注意現(xiàn)有的類不是基元數(shù)據(jù)類型是復雜的數(shù)據(jù)類型;在實際的應用中,復合類和被復合的類往往都是獨立存在的類文件,在同一個包中,被復合類的對外類成員的訪問控制往往默認是internal的,只對包內(nèi)是可見的,而復合類往往是public的,這是模塊思想的一個體現(xiàn);聚合和復合形式相似,都是新類對象中持有別的類對象的引用。繼承 extends;Actionscript3是一門單繼承的語言;Actionscript3中的所有內(nèi)置類和我們用戶自定義的類都是直接或者間接繼承自actionscript3的根類object,如果我們寫的自定義的類沒有聲明任何的繼承,那么實際上就直接繼承自object類;繼承的表現(xiàn):一旦使用extends繼承父類,子類具有父類所有的非private的實例屬性和方法;而且任何使用父類對象的地方都可以使用子類對象來代替;類成員包括實例成員和靜態(tài)成員,實例成員包括實例屬性和實例方法,靜態(tài)成員包括靜態(tài)屬性和靜態(tài)方法,不是private的實例成員都可以被子類繼承,在actionscript3中,類的靜態(tài)成員不能被子類繼承,這是actionscript3中的繼承機制的一個改變,靜態(tài)成員雖然不能被子類繼承,但是可以在子類中訪問父類靜態(tài)成員,父類的靜態(tài)成員存在范圍鏈,包括父類和其所有的子類;如果子類中的實例成員名稱或新定義的靜態(tài)成員名稱與父類的靜態(tài)成員名稱相同,那么父類的靜態(tài)成員將會被遮藏,這時候如果想要訪問父類的靜態(tài)成員,只有使用父類的類名加上靜態(tài)成員的名稱;繼承和訪問控制;繼承和重寫;在子類中經(jīng)常要改變繼承自父類中的某個屬性或者方法中的內(nèi)容,但是不改變名稱,從而達到子類同名方法實現(xiàn)不同功能的多態(tài)效果,這種方式叫做重寫;
點擊復制文檔內(nèi)容
職業(yè)教育相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1