加方括號就表示不是一個關鍵字
成都創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供關嶺網(wǎng)站建設、關嶺做網(wǎng)站、關嶺網(wǎng)站設計、關嶺網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、關嶺企業(yè)網(wǎng)站模板建站服務,十年關嶺做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。
經(jīng)??吹接械拇a中Byte、 String 、Object 加上方括號,就是為防止編譯器把他們誤認為是關鍵字。在sql中也會經(jīng)??吹?/p>
你理解時可以不用理會,[Byte]() 就是Byte()
dim bytesSent() as Byte 是聲明一個沒有給定下標的數(shù)組
dim bytesReceived(255) as Byte 是聲明了一個有下標的數(shù)組
VB.NET可選參數(shù)的默認值必須是一個常數(shù)表達式。
過程定義中跟在可選參數(shù)后的每個參數(shù)也都必須是可選的。
下面的語法顯示帶VB.NET可選參數(shù)的過程聲明:
Sub sub name(ByVal parameter 1 As data type 1,
Optional ByVal parameter 2 As data type 2 = default value)
調(diào)用帶VB.NET可選參數(shù)的過程
過程在運行時無法檢測到給定的參數(shù)是否已被省略,或者調(diào)用代碼是否已顯式提供默認值。如果需要弄清楚這一點,可以設置一個不可能的值作為默認值。下面的過程定義了可選參數(shù) office,并測試其默認值 QJZ 以查看它在調(diào)用中是否已被省略:
Visual Basic
Sub notify(ByVal company As String, Optional ByVal office As String = "QJZ")
If office = "QJZ" Then
Debug.WriteLine("office not supplied -- using Headquarters")
office = "Headquarters" End If
' Insert code to notify headquarters or specified office.
End Sub
如果可選參數(shù)是像 String 這樣的引用類型,只要它不是該變量所預期的值,就可以使用 Nothing 作為默認值。
VB.NET可選參數(shù)和重載
定義帶可選參數(shù)的過程的另一種方法是使用重載。如果有一個可選參數(shù),可以定義過程的兩個重載版本,一個接受此參數(shù),另一個則不帶參數(shù)。此方法隨可選參數(shù)數(shù)目的增加而變得更復雜。然而,這樣做的優(yōu)點是可以完全確定調(diào)用程序是否提供了每個VB.NET可選參數(shù)。
同一個類中多次聲明相同名字的方法,每次聲明時都是不同的參數(shù)列表。方法重載主要是為了實現(xiàn)同一個功能,而使用統(tǒng)一的方法處理不同的數(shù)據(jù)類型。它是多樣性在同一類中的一種表現(xiàn)。而且方法重載時,可以使用不同的作用域關鍵字比如使用public、或者使用friend。
方法重載必須滿足以下三點:
1、方法重載時需要加入關鍵字OVERLOADS
2、方法的名稱必須相同。
3、方法的參數(shù)必須不同,這里的不同分三種情況:
a、參數(shù)個數(shù)不同,類型無限制;
b、參數(shù)個數(shù)相同,但是參數(shù)類型不同;
c、參數(shù)個數(shù)和類型都相同,但是參數(shù)的順序不同
重構是一種程序結(jié)構上的改動,例如添加刪除方法、改變參數(shù)等。
重寫、重載則都是指面向?qū)ο笾械奶摵瘮?shù)的多態(tài)實現(xiàn)。
.NET2005編程環(huán)境中,有個菜單功能支持 C# 的重構。而vb.net則需要手動
int(x)函數(shù)是取不大于x的最大整數(shù)。
如果你
Dim A As Double = 180.8931 * 10000
那么
Trace.WriteLine(A) '輸出A為1808931
A = Int(A)
Trace.WriteLine(A) '輸出A為1808931
而你是:
Dim A As Double = 180.89305 * 10000+0.5
是乘后再加的0.5
在Int時就會
Trace.WriteLine(int(A)) '輸出A為1808930
相當于int(180.89305 * 10000+0.5)而不是:int(1808931)。
這個是類的初始化方式。舉個栗子
public?class?a
private?mCode?as?string
public?sub?new()
mCode?=?"123"
end?sub
public?sub?new(byval?code?as?string)
mCode?=?code
end?sub
end?class
使用這個類的時候
dim?HaveA?as?new?a("win")
dim?HaveB?as?new?a()
第一個情況,類中的變量mCode是“123”
第二中情況,類中的變量mCode是“win”
這個new就叫做類的構造函數(shù)。
這里看到了兩個new,他們一個有參數(shù),一個沒有參數(shù),這個叫做函數(shù)重載。