類(Class)實際上是對某種類型的對象變量和方法的原型.類是從一些具有相同屬性或功能的具體實例,,抽象出共有的一些屬性的,,自定義抽象數(shù)據(jù)類型。 類是對某個對象的定義,。它包含有關(guān)對象動作方式的信息,,包括它的名稱、方法,、屬性和事件,。實際上它本身并不是對象,因為它不存在于內(nèi)存中,。當(dāng)引用類的代碼運(yùn)行時,,類的一個新的實例,即對象,,就在內(nèi)存中創(chuàng)建了,。雖然只有一個類,,但能從這個類在內(nèi)存中創(chuàng)建多個相同類型的對象。 可以把類看作“理論上”的對象,,也就是說,,它為對象提供藍(lán)圖,但在內(nèi)存中并不存在,。從這個藍(lán)圖可以創(chuàng)建任何數(shù)量的對象,。從類創(chuàng)建的所有對象都有相同的成 員:屬性、方法和事件,。但是,,每個對象都象一個獨(dú)立的實體一樣動作。例如,,一個對象的屬性可以設(shè)置成與同類型的其他對象不同的值,。 Microsoft(r) Visual Basic(r) for Applications (VBA) 工程中可包含兩種不同類型的類模塊:沒有任何一種與其關(guān)聯(lián)的用戶界面的基本類模塊;與窗體或其它組件關(guān) 聯(lián)的類模塊,。例如,,與窗體相關(guān)聯(lián)的類模塊,它們和基本類模塊相同,,只是它們只有在那個窗體存在于內(nèi)存中時,,才存在于內(nèi)存中。擁有相關(guān)聯(lián)的類模塊的對象的示 例是“用戶窗體”,、Microsoft(r) Access 窗體和報表,、Microsoft(r) Word 的 ThisDocument 對象,Microsoft(r) Excel 的 ThisWorkbook 和 SheetN 對象,。
當(dāng)廠家制造自行車的時候,廠商利用了自行車共有的特性來根據(jù)相同的藍(lán)圖制造許多自行車。如果制造一輛自行車就要產(chǎn)生一個新藍(lán)圖,,那效率就太低了,。 在面向?qū)ο?a class="innerlink" title="軟件" target="_new">軟件中,同樣地,,可以讓相同種類地許多對象來共有一些特性,,比如矩形、雇員記錄,、視頻夾等等,。就象自行車制造商人,你可以利用相同種類的對象是相似的事實并且你可以為這些對象創(chuàng)建一個藍(lán)圖,。對對象的軟件藍(lán)圖叫做類,。 自行車的類需要定義一些實例變量來包括當(dāng)前檔位、當(dāng)前速度等等,。這個類將為實例方法定義和提供實施方法,,它允許騎車者改變檔位、剎車以及改變腳踏板的節(jié)奏,,如圖1所示:
(圖2)
|
|