自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

五分鐘了解VB.NET類構(gòu)造

開發(fā) 后端
這里介紹VB.NET類構(gòu)造,VB6和VB.NET在類的用法上有一個(gè)首要的顯著差別,那就是后者不再采用Set關(guān)鍵詞了。除此以外,在代碼中定義類的方法也有所改變。

在向大家詳細(xì)介紹VB.NET類構(gòu)造之前,首先讓大家了解下VB.NET類是什么,然后全面介紹VB.NET類構(gòu)造。

VB.NET類

我在以前的文章里曾經(jīng)提到:VB.NET的出現(xiàn)使得VB6在類的概念及其操作上發(fā)生了巨大的變化?,F(xiàn)在就讓我們進(jìn)到這些變化中來(lái)進(jìn)行更深入的探討。首先讓我們看看類到底意味著什么。

不妨假設(shè)我把你帶回到了學(xué)院,現(xiàn)在你走進(jìn)一個(gè)教室,我要求你解釋一下什么是類(class),你可能會(huì)這樣回答:“一組學(xué)生形成一個(gè)班(class)?!焙呛牵绻@樣回答,你真是歪打正著了:沒錯(cuò),在這里,組就是最關(guān)鍵的詞。用面向?qū)ο蟮木幊趟枷雭?lái)看,類就是存儲(chǔ)數(shù)據(jù)同時(shí)給一組相關(guān)代碼賦予協(xié)調(diào)功能的方式。類是面向?qū)ο缶幊痰暮诵摹?/P>

.NET賦予類的新面目
VB6和VB.NET在類的用法上有一個(gè)首要的顯著差別,那就是后者不再采用Set關(guān)鍵詞了。除此以外,在代碼中定義類的方法也有所改變。這些變動(dòng)不僅會(huì)直接影響你編寫的代碼而且更會(huì)改變你組織源文件的方式。

在VB6下,每個(gè)類都必須在單個(gè)源文件內(nèi)增加和定義。而在VB.NET下就不是這樣了:類以代碼塊的形式定義,如下所示:

  1. Public Class MyClass  
  2. '在這里編寫類的成員代碼!  
  3. End Class 

面對(duì)如此革命性的變化,有些人可能會(huì)急得嘴角發(fā)泡,而大多數(shù)人卻可能并不在乎或不明白用代碼塊定義類到底用什么用。說(shuō)真的,這全看你的口味。有些人喜歡而且希望一個(gè)文件中就只定義一個(gè)類,而另一些人則更愿意邏輯地組織他們的類。例如,如果你有一個(gè)product類,同時(shí)又有了一個(gè)對(duì)應(yīng)的 products collection類,那么你完全可以把它們放在同一文件里以便更好地組織源文件。

VB.NET類構(gòu)造和析構(gòu)

當(dāng)你的代碼在創(chuàng)建一個(gè)類的實(shí)例時(shí)會(huì)調(diào)用該類的一個(gè)特殊方法:構(gòu)造器(constructor)。同樣的,在類被破壞的時(shí)候則會(huì)調(diào)用析構(gòu)器(destructor)方法。在大多數(shù)面向?qū)ο笳Z(yǔ)言里牽扯到類的構(gòu)造和析構(gòu)時(shí)通常都采用了以上兩個(gè)一般術(shù)語(yǔ)而非具體編碼時(shí)的成員名。我則喜歡采用術(shù)語(yǔ)“structors”來(lái)引用構(gòu)造和析構(gòu)。在VB6語(yǔ)言里,具體的“structors”是Class_Initialize和 Class_Terminate。在VB.NET下,Class_Initialize方法則被重命名為New,而Class_Terminate則成了 Finalize。

按照VB6對(duì)類構(gòu)造器的實(shí)現(xiàn)限制,程序員不得給該方法添加參數(shù)。然而,VB.NET中則對(duì)構(gòu)造器方法提供了參數(shù)支持。在VB.NET下,你現(xiàn)在可以隨意地把參數(shù)添加到這個(gè)方法中來(lái),甚至可以重載該方法。

參數(shù)化的構(gòu)造器如何靈活地創(chuàng)建類呢?舉個(gè)例子,假設(shè)有一個(gè)ADO Connection類。用VB6語(yǔ)言的話,你首先得把該類實(shí)例化,然后在代碼中用ConnectionString屬性定義連接。要用VB.NET的話,這個(gè)類的構(gòu)造器就被參數(shù)化和重載了,這樣,在程序員給對(duì)象實(shí)例化時(shí)就可以給它傳遞一個(gè)連接字符串,這樣你就不必關(guān)心代碼內(nèi)如何設(shè)置以后的連接了。當(dāng)然,你完全可以按老辦法做:什么參數(shù)都不傳遞,以后在代碼中設(shè)置連接字符串。

【編輯推薦】

  1. 詳談VB.NET編碼規(guī)范經(jīng)驗(yàn)
  2. 描述VB.NET工程轉(zhuǎn)換成步驟
  3. 講述C#與VB.NET間移植的技巧
  4. 分享個(gè)人總結(jié)VB.NET多線程
  5. 剖析VB.NET TextBox控件
責(zé)任編輯:佚名 來(lái)源: 博客園
相關(guān)推薦

2009-10-30 13:12:40

VB.NET創(chuàng)建類

2009-10-21 18:19:36

VB.NET實(shí)現(xiàn)拖放

2009-11-04 13:12:33

VB.NET面向?qū)ο缶?/a>

2009-11-03 11:01:45

VB.NET遠(yuǎn)程事件

2009-11-10 16:05:21

VB.NET格式化

2009-11-02 09:43:01

VB.NET構(gòu)造函數(shù)

2009-11-10 11:54:12

VB.NET按鈕

2009-10-27 09:17:26

VB.NET生成靜態(tài)頁(yè)

2009-10-28 11:44:34

VB.NET資源文件

2009-10-26 19:09:50

VB.NET轉(zhuǎn)換形態(tài)

2009-11-03 17:15:07

VB.NET開發(fā)Exc

2009-10-28 10:58:34

VB.NET定時(shí)器事件

2022-12-16 09:55:50

網(wǎng)絡(luò)架構(gòu)OSI

2023-09-07 23:52:50

Flink代碼

2009-11-05 14:53:54

Visual Stud

2021-10-19 07:27:08

HTTP代理網(wǎng)絡(luò)

2009-10-29 16:22:10

VB.NET操作MyS

2009-10-12 13:32:58

VB.NET線程構(gòu)造器

2009-10-28 13:23:52

VB.NET可選參數(shù)

2024-06-25 12:25:12

LangChain路由鏈
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)