【正文】
TR bgcolor=whiteTD % Dim y As new Window() =200 (The width of window is amp。 BR) (The height of window is amp。當(dāng)執(zhí)行語句 = 200 時,調(diào)用 Set屬性過程給 width屬性賦值。 amp。另外,例子中還聲明了一個只讀屬性 height,它只有 Get屬性過程,并且使用 ReadOnly修飾符修飾屬性。共享字段或共享屬性不與實例相關(guān)聯(lián),它屬于類,因此調(diào)用共享字段或共享屬性不需要創(chuàng)建類實例。例如: ? Class TestSharedField ? Public Shared ss As Integer ? End Class ? Sub TestShared ? Dim T As TestSharedField 39。 直接由類名調(diào)用 ? () ? End Sub ? 在 TestSharedField類中聲明了一個共享字段 ss,對 ss的引用直接使用類名 TestSharedField。它與普通的過程和函數(shù)語法格式基本是一樣的。 1. 方法聲明 過程方法聲明的具體格式: 方法修飾符 Sub 方法名(形參列表) 語句 End Sub 函數(shù)方法聲明的具體格式: 方法修飾符 Function 方法名(形參列表) As 返回值數(shù)據(jù)類型 語句 End Function 方法修飾符除了具有普通函數(shù)和過程的修飾符以外,還包括:Overloads、 Overridable、 MustOverride、 NotOverridable、MustOverride、 Shared和 Shadows。 返回值數(shù)據(jù)類型可以是合法的 。因為共享方法和類相關(guān)聯(lián),所以調(diào)用共享方法不需要創(chuàng)建類實例。共享方法不能用 Overridable、 NotOverridable 或 MustOverride 修飾符聲明。 %page LANGUAGE = vb % script language=vb runat =server Class TestMethod Public Shared f As Integer = 10 39。 共享方法,為共享字段的值增一 f += 1 End Sub End Class /script HTML HEAD titleTest Property/title /HEAD [例 44]()使用共享方法 BODY TABLE width=100% bordercolor=blue border=1 TR height=25 bgcolor=blue TD align=centerfont color=white程序輸出結(jié)果/font/TD/TR TR bgcolor=whiteTD % Dim s As TestMethod 39。 ) () 39。 直接用類名調(diào)用共享方法 (The Value of Shared field is amp。為了區(qū)分這些同名方法,要求方法有不同的參數(shù),要么參數(shù)個數(shù)不同,要么參數(shù)類型不同。 動手做: %page LANGUAGE = vb AutoEventWireup=false% script language=vb runat =server class TestMethod Function square(ByVal x As Integer) As Integer return x * x End Function Function square(ByVal x As Double) As Double return x * x End Function Function square(ByVal x As Decimal) As Decimal return x * x End Function End Class [例 45]()使用方法重載 /script HTML HEAD titleTest Property/title /HEAD BODY TABLE width=100% bordercolor=blue border=1 TR height=25 bgcolor=blue TD align=centerfont color=white程序輸出結(jié)果/font/TD/TR TR bgcolor=whiteTD % Dim t As new TestMethod() (The squre is amp。 , amp。 , amp。三個方法的區(qū)別是參數(shù)類型不同。新類從既有類中繼承類成員,同時為了賦予新類以新的特性,可以重新定義或加進新的成員,從而形成類的層次或等級。 1. 派生類的聲明 派生類的聲明格式為: 屬性 類修飾符 Class 派生類類名 Inherits 基類 類體 End Class 在類聲明中,通過在類名的后面加上 Inherits和基類名表示繼承。但不能得到在父類中聲明為 Private(私有)的方法、屬性和字段。 動手做: Public Class Employee Private name As String Private age As Integer Private salary As Single Public Sub New(ByVal n As String, ByVal a As Integer, ByVal s As Single) name = n age = a salary = s End Sub [例 46]()從 [例 41]聲明的 Employee類派 生一個新類 Director Public Function GetName() Return name End Function End Class Public Class Director Inherits Employee Private Title As String Sub New(ByVal t As String,ByVal n As String , ByVal a As Integer , ByVal s As Decimal) (n , a , s ) Title = t End Sub Public Function GetTitle() Return Title End Function End Class 點評: 新類繼承了基類的成員 name(姓名)、 age(年齡)、 salary(工資),并添加了新的成員 Title(職務(wù)),重載了構(gòu)造函數(shù),添加了方法 GetTitle,以返回職務(wù)的值。 如 [例 46]在創(chuàng)建派生類 Director實例時,使用MyBase調(diào)用其基類 Emp