vb.net析構(gòu) net vb

VB.6跟VB.net 有什么不一樣??

Visual Basic .NET 具有許多新功能和改進(jìn)功能(如繼承、接口和重載),這使它成為功能強(qiáng)大的面向?qū)ο蟮木幊陶Z言。Visual Basic 開發(fā)者現(xiàn)在可以使用顯式多線程處理創(chuàng)建多線程可伸縮的應(yīng)用程序。Visual Basic .NET 中其他的新語言功能包括結(jié)構(gòu)化異常處理、自定義屬性和符合公共語言規(guī)范 (CLS)。

創(chuàng)新互聯(lián)主營隆陽網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都app軟件開發(fā)公司,隆陽h5成都微信小程序搭建,隆陽網(wǎng)站營銷推廣歡迎隆陽等地區(qū)企業(yè)咨詢

CLS 是對諸如數(shù)據(jù)類型之類的事物以及對象的公開和交互操作方式進(jìn)行標(biāo)準(zhǔn)化的一組規(guī)則。Visual Basic .NET 添加了幾項利用 CLS 優(yōu)勢的功能。任何符合 CLS 的語言都可以使用在 Visual Basic .NET 中創(chuàng)建的類、對象和組件。Visual Basic 用戶可以從其他符合 CLS 的編程語言訪問類、組件和對象,而不用擔(dān)心諸如數(shù)據(jù)類型之類的語言特定的差異。Visual Basic .NET 程序使用的 CLS 功能包括程序集、命名空間和屬性。

Visual Basic .NET 支持許多新的或改進(jìn)的面向?qū)ο笳Z言功能,如繼承、重載、Overrides 關(guān)鍵字、接口、共享成員和構(gòu)造函數(shù)。

還包括結(jié)構(gòu)化異常處理、委托以及幾個新的數(shù)據(jù)類型。

繼承

Visual Basic .NET 通過允許定義作為派生類基礎(chǔ)的類支持“繼承”。派生類繼承并可以擴(kuò)展基類的屬性和方法。它們還可以用新實現(xiàn)重寫繼承方法。默認(rèn)情況下,用 Visual Basic .NET 創(chuàng)建的所有類都是可繼承的。由于設(shè)計的窗體實際上是類,因此可以使用繼承在現(xiàn)有窗體的基礎(chǔ)上定義新窗體。有關(guān)詳細(xì)信息,請參閱繼承。

異常處理

Visual Basic .NET 通過使用增強(qiáng)版本的 Try...Catch...Finally 語法支持“結(jié)構(gòu)化異常處理”,諸如 C++ 之類的其他語言也支持該語法。結(jié)構(gòu)化異常處理將現(xiàn)代控件結(jié)構(gòu)(類似于 Select Case 或 While)與異常、受保護(hù)的代碼塊和篩選器結(jié)合起來。結(jié)構(gòu)化異常處理使用可靠、綜合的錯誤處理程序使創(chuàng)建和維護(hù)程序變得容易。有關(guān)詳細(xì)信息,請參閱異常處理。

重載

“重載”是定義同名但使用不同數(shù)據(jù)類型的屬性、方法或過程的能力。重載過程可以按照需要提供盡可能多的實現(xiàn)處理不同種類的數(shù)據(jù),并給出單個通用過程的外觀。有關(guān)詳細(xì)信息,請參閱重載屬性和方法。

重寫屬性和方法

Overrides 關(guān)鍵字可使派生對象重寫從父級對象繼承的特征。重寫的成員具有與基類派生的成員相同的參數(shù),但實現(xiàn)不同。成員的新實現(xiàn)可以通過成員名稱前加 MyBase 調(diào)用父類中的原始實現(xiàn)。有關(guān)詳細(xì)信息,請參閱重寫屬性和方法。

構(gòu)造函數(shù)和析構(gòu)函數(shù)

“構(gòu)造函數(shù)”是控制類的新實例初始化的過程。反過來,“析構(gòu)函數(shù)”是當(dāng)類離開范圍或設(shè)置為 Nothing 時釋放系統(tǒng)資源的方法。Visual Basic .NET 通過使用Sub New 和 Sub Finalize 過程支持構(gòu)造函數(shù)和析構(gòu)函數(shù)。有關(guān)詳細(xì)信息,請參閱對象生存期:如何創(chuàng)建和銷毀對象。

數(shù)據(jù)類型

Visual Basic .NET 引入了三種新的數(shù)據(jù)類型。Char 數(shù)據(jù)類型是一個無符號的 16 位數(shù)量,用來存儲 Unicode 字符。它等效于 .NET 框架的 System.Char 數(shù)據(jù)類型。 Short 數(shù)據(jù)類型是有符號的 16 位整數(shù),在 Visual Basic 的以前版本中稱為 Integer。Decimal 數(shù)據(jù)類型是 96 位有符號的整數(shù)乘以 10 的可變次數(shù)冪。在 Visual Basic 的以前版本中僅在 Variant 中可用。有關(guān)詳細(xì)信息,請參閱數(shù)據(jù)類型。

接口

“接口”描述類的屬性和方法,但和類不同,它不提供實現(xiàn)。Interface 語句可以聲明接口,而 Implements 語句允許編寫代碼可以實現(xiàn)接口中描述的項。有關(guān)詳細(xì)信息,請參閱 Visual Basic .NET 中的接口。

委托

“委托”是代表您自己調(diào)用對象方法的對象,有時被描述為類型安全、面向?qū)ο蟮暮瘮?shù)指針??梢允褂梦凶屵^程指定事件處理程序方法在事件發(fā)生時運行。也可以與多線程應(yīng)用程序一起使用委托。有關(guān)詳細(xì)信息,請參閱委托和 AddressOf 運算符。

共享成員

共享成員是由一個類的所有實例共享的屬性、過程和字段。當(dāng)多個對象需要使用公共信息時,共享數(shù)據(jù)成員很有用。無須首先在類中創(chuàng)建一個對象就可以使用共享類方法。有關(guān)詳細(xì)信息,請參閱共享成員。

引用

“引用”允許使用其他程序集中定義的對象。在 Visual Basic .NET 中,引用指向程序集,而非類型庫。有關(guān)詳細(xì)信息,請參閱引用和 Imports 語句。

命名空間

命名空間通過將類、接口和方法組織成層次結(jié)構(gòu)來防止命名沖突。有關(guān)詳細(xì)信息,請參閱命名空間。

程序集

“程序集”通過描述特定組件或應(yīng)用程序的所有必需文件來替換和擴(kuò)展類型庫的能力。程序集可以包含一個或多個命名空間。有關(guān)詳細(xì)信息,請參閱程序集。

特性

“特性”可以提供有關(guān)程序元素的其他信息。例如,當(dāng)作為 XML Web services 使用類時,可以使用特性指定應(yīng)公開類中的哪個方法。有關(guān)詳細(xì)信息,請參閱特性。

多線程編程

Visual Basic .NET 允許編寫?yīng)毩?zhí)行多任務(wù)的應(yīng)用程序。有可能延遲其他任務(wù)的任務(wù)可在單獨的線程上執(zhí)行,該過程稱為“多線程處理”。通過使復(fù)雜任務(wù)在獨立于用戶接口的線程中運行,多線程處理提高了應(yīng)用程序?qū)τ脩糨斎氲捻憫?yīng)能力。有關(guān)詳細(xì)信息,請參閱多線程應(yīng)用程序。

vb.net中的概念,這么復(fù)雜啊

前面幾個在VB6中就有,這么多概念是有其作用的,當(dāng)你用得深入之后,就會發(fā)現(xiàn)開始的那些簡單功能不夠用了,這時這些更豐富的功能就可以發(fā)揮作用了。

VB.NET 里 結(jié)構(gòu)(Structure)和類(Class)有什么區(qū)別?如題 謝謝了

Structure是值類型,classe是引用類型 Structure用棧來分配; classe用堆來分配 structure的成員默認(rèn)情況下是公共的,而Class的成員變量和常量默認(rèn)情況下是私有的而其它成員默認(rèn)情況下是公共的.這與VB6是相兼容的。 structure必須至少有一個非共享的成員變量或事件成員,class可以完全是空的. Structure的成員不能聲明成Protected; class成員可以. 一個structure過程只能在它是一個Shared Sub時才能handle events而且只能通過AddHandler語句;而任何class過程都可以handle events,既可以用Handles關(guān)鍵字或 AddHandler語句。 Structure variable declarations cannot specify initializers, the New keyword, or initial sizes for arrays; class variable declarations can. Structure繼承自ValueType類,不能從其它任何類型繼承; classes可以從任何不是ValueType的類繼承 Structure不能繼承而Class可以 Structure從來不析構(gòu)terminated因此common language runtime (CLR)從來不調(diào)用它的Finalize方法,classe由垃圾回收器進(jìn)行析構(gòu), 當(dāng)沒有任何對該類的引用時調(diào)用它的Finalize方法 structure 不需要一個構(gòu)造函數(shù),而Class需要 Structure只能有帶參數(shù)的非共享的構(gòu)造函數(shù); classes 可以有帶或不帶參數(shù)的構(gòu)造函數(shù). 每個Structure都有一個默認(rèn)的不帶參數(shù)的構(gòu)造函數(shù)以對其成員進(jìn)行初始化,你可以重新定義該函數(shù)

VB.NET和C#逐層橫向?qū)Ρ萚1]

//全局層

VB支持Module 是一種全部成員都是靜態(tài)的特殊類型

C#支持static class 和VB的Module類似

VB的Imports語句可以把類的靜態(tài)成員導(dǎo)入 而C#的using語句沒有這個功能Imports System Math

VB可以選擇變量是否必須聲明 以及類型是否必須指定(通過Option語句)C#則默認(rèn)是VB最嚴(yán)格的狀態(tài)

C#可以使用extern alias指定程序集的別名 并使用別名限定運算符::來解析類名沖突的兩個程序集VB沒有這個功能 但可以用Global關(guān)鍵字獲得命名空間級別名稱沖突解析能力

C#可以指定友元程序集 VB不支持

//成員層

VB可以直接重寫Object Finalize方法 而C#必須采用析構(gòu)函數(shù)的語法

C#可以指定attribute的target以便清楚地放置attribute 而VB則通過尖括號的位置來決定 有時候?qū)懖怀瞿撤NC#可行的語法

VB能夠重載這些C#不支持的運算符 ^ Like \

C#能夠重載這些VB不支持的運算符 ++ !

VB中子類的構(gòu)造函數(shù) 先調(diào)用父類的構(gòu)造函數(shù) 然后才初始化子類的字段

C#中子類的構(gòu)造函數(shù) 先初始化子類的字段 然后才調(diào)用父類的構(gòu)造函數(shù)

VB的Implemnts語句可以為實現(xiàn)接口的方法改名 改變訪問級別

C#不支持但是有一個顯式實現(xiàn)的語法可以幫忙

VB的函數(shù)重載 子類和父類的方法視為同級C#的函數(shù)重載 子類優(yōu)先于父類

VB的Main函數(shù)自動加 可以改

//繼續(xù)成員層

C#的自定義event可以修改add和remove的規(guī)則

VB的自定義Event除了C#的之外 還支持重載RaiseEvent語句的用法

VB的Event可以直接書寫Event參數(shù) 自動生成Delege類型

C#的event必須指定delegate類型

VB支持WithEvents/Handles靜態(tài)事件綁定語法 也支持AddHandler動態(tài)綁定方法

C#的事件只支持使用+=動態(tài)綁定

VB的屬性(Property)可以帶參數(shù)

C#的屬性不能帶參數(shù)

盡管不支持手工定義 VB支持屬性按引用傳遞值 C#不支持

VB可以指定一個帶有參數(shù)的屬性為Default 于是支持索引語法

C#則必須把這個東西聲明為索引器 即this語法

VB允許方法帶有若干可選參數(shù)(Optional)可指定默認(rèn)值

C#不允許

C#支持out參數(shù) 傳入前不需要初始化

VB不內(nèi)置支持

C#支持類中使用fixed buffer 即固定大小的類似數(shù)組的成員

VB不支持

C#支持按照參數(shù)是否帶有ref/out進(jìn)行函數(shù)重載

VB不支持這種重載

C#允許僅大小寫區(qū)分的兩個函數(shù)或變量存在

VB不區(qū)分大小寫 因此也不允許

lishixinzhi/Article/program/net/201311/15509

分享標(biāo)題:vb.net析構(gòu) net vb
文章源于:http://muchs.cn/article46/dospgeg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、用戶體驗標(biāo)簽優(yōu)化、網(wǎng)站設(shè)計公司網(wǎng)站改版、微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營