VB入門教程之面向?qū)ο髮?shí)例化拓展
面向?qū)ο筮@個(gè)詞語經(jīng)常聽見,一些人喜歡用面向?qū)ο蟮乃枷脒M(jìn)行編程,如果要拿面向?qū)ο螽?dāng)一個(gè)話題的話,面向?qū)ο笳Z言不是那種很簡(jiǎn)單只需要一兩天就能精通或者僅僅靠一次演講就能掌握的語言。要掌握面向?qū)ο蟪绦蛘Z言你需要作在掌握理論的同時(shí)還要做大量的練習(xí)。VB基礎(chǔ)教程表述了在VB.NET中運(yùn)用面向?qū)ο笤砭幊痰幕痉椒?,本文沒有全面涉及VB.NET面向?qū)ο缶幊蹋琕B入門教程僅僅是一個(gè)開始。
VB入門教程對(duì)象實(shí)例
一個(gè)類是一個(gè)模板或代表實(shí)體的藍(lán)圖。由于要使用類的域、方法或其他成員,你***次需要將類的觀念轉(zhuǎn)變?yōu)閷?duì)象,這樣說吧,僅僅是跑車的藍(lán)圖是沒有用的,除非工程師將藍(lán)圖造成車,從另一個(gè)方面說,你駕駛的是車而不是藍(lán)圖。
在面向?qū)ο缶幊讨?,?duì)象被稱為類的實(shí)例,因此創(chuàng)建一個(gè)對(duì)象的過程又被稱為實(shí)例化。
VB入門教程list1示范了實(shí)例化employee類
Listing 1: 對(duì)象初始化
- Class Employee
- Dim salary As Decimal = 40000
- Dim yearlyBonus As Decimal = 4000
- Public Sub PrintSalary()
- ' print the salary to the Console
- System.Console.Write(salary)
- End Sub
- End Class
- Module Module1
- Public Sub Main()
- Dim anEmployee As Employee
- anEmployee = New Employee()
- anEmployee.PrintSalary()
- End Sub
- End Module
VB入門教程Listing 1中的模塊Module1中提供了Main sub,在vb.NET程序中Main Sub是整個(gè)程序的入口,要編譯源程序,那么你就必須提供訪問Main Sub的途徑。如果你沒有使用Visual Studio.NET,那么可以使用vbc.exe 編譯VB.NET源程序,vbc.exe 是在安裝.NET Framework時(shí)自動(dòng)安裝的。舉個(gè)例子,當(dāng)你把源代碼保存到文件Employee.vb中后,在Employee.vb相同的目錄下輸入vbc Employee.vb。
現(xiàn)在我們回到list1的代碼中,在Main sub中聲明了Employee類的對(duì)象變量,這個(gè)變量叫anEmployee.
- Dim anEmployee As Employee
- anEmployee初始化Employeer時(shí)必須使用關(guān)鍵字new.
- anEmployee = New Employee()
現(xiàn)在我們有一個(gè)Employeer的對(duì)象,你可以使用它的功能了。在我們的例子中,調(diào)用了PrintSalary 方法。
- anEmployee.PrintSalary()
你也可以把Main Sub放在類中,采用這種方法就不需要模塊,如list2中所示
- Listing 5: Moving the Main sub to the class itself
- Class Employee
- Dim salary As Decimal = 40000
- Dim yearlyBonus As Decimal = 4000
- Public Sub PrintSalary()
- ' print the salary to the Console
- System.Console.Write(salary)
- End Sub
- Public Shared Sub Main()
- Dim employee As Employee
- employee = New Employee()
- employee.PrintSalary()
- End Sub
- End Class
注意在PrintSalary 方法中調(diào)用了System.Console.Write意味著調(diào)用了Console類的write方法并且Console類是System名字空間的一部分,關(guān)于名字空間我們將在后面講述。
【編輯推薦】