类和模块
????? 昨天把ArcSDE配置好了,今天寫AE連接ArcSDE的程序時,看到有人說把連接的程序放在一個新建的模塊中,也有說放在類里面。忽然發現我對類和模塊的作用以及應用并不了解。雖然之前也用過模塊,主要是定義一個Public的模塊變量。沒有用過類,在時間右鍵功能時,接觸過,不過并沒有去用。
????? 面向對象有三個基本特征:封裝、繼承和多態。四種核心技術:分類、概括、聯合、聚集。類是將對象的屬性和方法封裝起來,使用時是通過對類實例化來進行操作的。類可以封裝、繼承,面向對象才會有類。以下是摘自網上的http://syue.com/Software/NET/ASPNET/5089.html
????? 每當創建類的實例時,如果該對象中存在名為 New 的過程,則公共語言運行庫 (CLR) 嘗試執行它。New 是一種稱為“構造函數”的過程,該構造函數用于在對象中的任何其他代碼執行之前初始化新對象。New 構造函數可用于打開文件、連接到數據庫、初始化變量以及處理任何需要在可使用對象前完成的其他任務。
?????? 當創建派生類的實例時,基類的 Sub New 構造函數首先執行,然后執行派生類中的構造函數。這是因為 Sub New 構造函數中的第一行代碼使用語法 MyBase.New() 調用類層次結構中該類本身緊上面的類的構造函數。然后調用該類層次結構中每個類的 Sub New 構造函數,直到到達基類的構造函數。此時,基類構造函數中的代碼執行,接著執行所有派生類中每個構造函數的代碼,最后執行最相近派生的類中的代碼。
??????? 當不再需要某對象時,CLR 調用該對象的 Finalize 方法,然后釋放其內存。Finalize 方法稱為“析構函數”,因為它執行清理任務,如保存狀態信息、關閉文件和與數據庫的連接,以及執行在釋放對象前必須完成的其他任務。
???????當調用派生類的 Sub Finalize 方法時,首先執行所需的任何清理任務,然后使用語法 MyBase.Finalize() 顯式調用其基類的 Sub Finalize 方法。因此,Sub Finalize 方法首先從最相近派生的類開始運行,最后執行基類中的代碼。
?
模塊:公用的靜態變量和方法放在模塊中,模塊是不能進行實例化的。或者說,是存儲全局變量和全局方法的東西。
轉載于:https://www.cnblogs.com/beileierhao/archive/2012/05/16/2503892.html
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
- 上一篇: 明年我国全面普及道路客运电子客票 快速高
- 下一篇: 路