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

VB.NET MyClass使用方法細(xì)講

開發(fā) 后端
VB.NET MyClass是不能夠在Shared方法中使用的,不過我們可以在實(shí)例方法內(nèi)部使用這一關(guān)鍵字來幫助我們進(jìn)行共享成員的訪問。

VB.NET編程語(yǔ)言,與其他種類的編程語(yǔ)言相比還是有很多不同之處,有很多比較突出的特點(diǎn),使他一經(jīng)出現(xiàn)就立即受到了開發(fā)人員的關(guān)注和使用。今天,大家將會(huì)認(rèn)識(shí)到VB.NET MyClass的行館使用方法,方便大家理解這項(xiàng)語(yǔ)言的具體功能及應(yīng)用技巧。

關(guān)于VB.NET MyClass,大家請(qǐng)先建立一個(gè)vbConsoleApplication程序,將本文SourceCP進(jìn)去

 

  1. Module Module1   
  2. Class BaseClass   
  3. Public Overridable Sub MyMethod()   
  4. Console.WriteLine("Father is 50 years old!")   
  5. End Sub   
  6. Public Sub UseMe()   
  7. Me.MyMethod() ' Use calling class's version, even if an override.   
  8. End Sub   
  9. Public Sub UseMyClass()   
  10. MyClass.MyMethod() ' Use this version and not any override.   
  11. End Sub   
  12. End Class   
  13. Class DerivedClass : Inherits BaseClass   
  14. Public Overrides Sub MyMethod()   
  15. Console.WriteLine("child is just 25 years old!")   
  16. End Sub   
  17. End Class   
  18. Sub Main()   
  19. Dim child As New DerivedClass   
  20. child.UseMe()   
  21. child.UseMyClass()   
  22. Console.ReadLine()   
  23. End Sub   
  24. End Module  

但是在Csharp里竟然無法實(shí)現(xiàn),C#怎樣也不允許我按非虛函數(shù)的方式調(diào)用一個(gè)虛函數(shù)。C++可以用類名::方法名的方式訪問自身版本的函數(shù),但C#的類名只能用來訪問靜態(tài)的成員。這真是C#一個(gè)奇怪的限制。也許是我少見多怪吧.在MSDN中是這么描述的: #t#

VB.NET MyClass的行為類似于引用最初實(shí)現(xiàn)時(shí)類的當(dāng)前實(shí)例的對(duì)象變量。VB.NET MyClass與 Me 類似,但對(duì)它的所有方法的調(diào)用都按該方法為 NotOverridable 來處理。因此,所調(diào)用的方法不受派生類中的重寫影響。盡管 DerivedClass 重寫了 MyMethod,但 UseMyClass 中的 MyClass 關(guān)鍵字使重寫的影響無效,編譯器會(huì)將該調(diào)用解析為 MyMethod 的基類版本。

MyClass 不能在 Shared 方法內(nèi)部使用,但您可以在實(shí)例方法內(nèi)部使用它來訪問類的共享成員。

但是在Csharp里竟然無法實(shí)現(xiàn),C#怎樣也不允許我按非虛函數(shù)的方式調(diào)用一個(gè)虛函數(shù)。C++可以用類名::方法名的方式訪問自身版本的函數(shù),但C#的類名只能用來訪問靜態(tài)的成員。這真是C#一個(gè)奇怪的限制。也許是我少見多怪吧.在MSDN中是這么描述的:

MyClass 的行為類似于引用最初實(shí)現(xiàn)時(shí)類的當(dāng)前實(shí)例的對(duì)象變量。VB.NET MyClass與 Me 類似,但對(duì)它的所有方法的調(diào)用都按該方法為 NotOverridable 來處理。因此,所調(diào)用的方法不受派生類中的重寫影響。盡管 DerivedClass 重寫了 MyMethod,但 UseMyClass 中的 MyClass 關(guān)鍵字使重寫的影響無效,編譯器會(huì)將該調(diào)用解析為 MyMethod 的基類版本。
VB.NET MyClass不能在 Shared 方法內(nèi)部使用,但您可以在實(shí)例方法內(nèi)部使用它來訪問類的共享成員。

這點(diǎn)在商業(yè)應(yīng)用中還是很不錯(cuò)的,比如父類為一個(gè)EmployeeBase,包含一個(gè)底薪的數(shù)據(jù),那么在實(shí)例化雇員的Employee中,Dim e1 as new Employee(EmployeeID),增加員工的底薪的時(shí)候,在O/R映像模型建立好之后只需要調(diào)用e1.AddSalary(Salary)方法即可調(diào)用基類的底薪修改方法.(即統(tǒng)一加底薪).個(gè)人意見,呵呵,所得不好,還請(qǐng)大家多多指教.

責(zé)任編輯:曹凱 來源: wewill.cn
相關(guān)推薦

2009-10-28 09:55:29

VB.NET MyCl

2010-01-22 15:25:46

VB.NET Time

2009-10-26 13:36:58

VB.NET Spli

2010-01-20 17:47:54

VB.NET注釋

2010-01-21 17:23:05

VB.NET Radi

2010-01-19 14:50:20

VB.NET集合

2010-01-19 09:36:06

VB.NET Func

2010-01-18 13:12:43

VB.NET控件數(shù)組

2010-01-20 13:28:35

VB.NET計(jì)算數(shù)字

2010-01-20 10:27:07

VB.NET隱式類型局

2009-10-13 15:20:02

VB.NET使用Dra

2009-11-03 09:26:13

VB.NET方法

2010-01-11 16:04:10

VB.NET使用wit

2009-10-14 17:08:44

VB.NET使用Fil

2009-10-26 15:57:07

VB.NET使用Ora

2009-11-03 13:48:02

VB.NET枚舉

2009-10-14 16:46:25

VB.NET OnSt

2009-11-03 10:51:33

VB.NET共享

2010-01-07 15:25:11

VB.NET數(shù)組

2009-10-27 11:32:42

VB.NET Disp
點(diǎn)贊
收藏

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