成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

詳細介紹VB.NET MyClass

開發 后端
這里介紹大部分人使用VB.NET MyClass可能僅限于調用本類其他構造函數時。其實MyClass可以產生一些很獨特的用法。

學習VB.NET時,你可能會遇到VB.NET MyClass問題,這里將介紹VB.NET MyClass問題的解決方法,在這里拿出來和大家分享一下。VB.NET支持一項很有意思的功能——MyClass。大部分人使用VB.NET MyClass可能僅限于調用本類其他構造函數時。其實MyClass可以產生一些很獨特的用法。MyClass永遠按類的成員為不可重寫的狀態進行調用,即當類的方法被重寫后,用MyClass仍能得到自身的版本。下面這個例子和VB幫助中所舉的例子非常相似

  1. Public Class MyClassBase  
  2. Protected Overridable Sub Greeting()  
  3. Console.WriteLine("Hello form Base")  
  4. End Sub  
  5.  
  6. Public Sub UseMe()  
  7. Me.Greeting()  
  8. End Sub  
  9.  
  10. Public Sub UseMyClass()  
  11. MyClass.Greeting()  
  12. End Sub  
  13. End Class  
  14.  
  15. Public Class MyClassSub  
  16. Inherits MyClassBase  
  17.  
  18. Protected Overrides Sub Greeting()  
  19. Console.WriteLine("Hello form Sub")  
  20. End Sub  
  21. End Class 

我們用一段代碼來測試:

  1. Dim o As MyClassBase = New MyClassSub()  
  2. o.UseMe()  
  3. o.UseMyClass() 

結果是UseMe執行了子類的版本,而UseMyClass還是執行了基類本身的版本,盡管這是一個虛擬方法。觀其IL,可以看到其簡單的實現原理:

Me用的調用指令是callvirt

  1. IL_0001: callvirt   instance void App1.MyClassBase::Greeting() 

而VB.NET MyClass調用的是call

  1. IL_0001:  call       instance void App1.MyClassBase::Greeting() 

奇怪的是,如此簡單的一個功能,我竟然無法用C#實現,C#怎樣也不允許我按非虛函數的方式調用一個虛函數。C++可以用類名::方法名的方式訪問自身版本的函數,但C#的類名只能用來訪問靜態的成員。這真是C#一個奇怪的限制。

【編輯推薦】

  1. 原理分析VB.NET開發控件
  2. 自己動手修改VB.NET支付寶接口
  3. 如何快速掌握VB.NET控件數組
  4. 描述VB.NET IDisplayer接口
  5. 事例概括VB.NET Display方法
責任編輯:佚名 來源: CSDN
相關推薦

2009-11-10 12:42:47

VB.NET Prin

2009-10-12 15:02:51

VB.NET動態控件

2010-01-21 16:45:00

VB.NET繼承規則

2010-01-21 14:06:03

VB.NET MyCl

2010-01-08 13:35:35

VB.NET寫Log方

2010-01-08 09:43:21

VB.NET漢字轉換

2009-11-10 12:48:17

VB.NET三維模型

2010-01-08 15:03:12

VB.NET類屬性

2010-01-08 14:14:27

VB.NET使用Fin

2010-01-14 18:22:05

VB.NET硬盤速度測

2010-01-22 14:19:38

VB.NET調用jar

2009-10-10 16:44:52

VB.NET開發控件

2010-01-13 16:15:47

VB.NET消息隊列

2010-01-07 15:18:10

VB.NET常量

2009-10-12 13:54:22

VB.NET Data

2009-10-13 17:03:55

VB.NET面向對象

2009-11-02 15:45:03

VB.NET IEnu

2010-01-22 10:41:33

VB.NET聲明結構

2009-10-12 13:19:14

VB.NET線程同步

2009-11-10 10:28:20

VB.NET誕生
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 毛片在线看片 | 国产成人av一区二区三区 | 亚洲精品美女 | 一级特黄a大片 | 久久精品一区二区三区四区 | 欧美成人一级 | av日韩高清 | 在线视频 中文字幕 | 久久精品性视频 | 玖玖精品视频 | 99精品视频免费在线观看 | 51ⅴ精品国产91久久久久久 | 国产毛片毛片 | 婷婷综合久久 | 人人射人人插 | 亚洲精品一区二区冲田杏梨 | 天色综合网| 91精品久久 | 一本一道久久a久久精品综合蜜臀 | 国产精品日产欧美久久久久 | 一二三在线视频 | 亚洲精品乱码久久久久久按摩观 | 日韩精品免费视频 | 色综合色综合网色综合 | 国产精品美女久久久av超清 | 韩日有码| 无毛av | 国产成人精品久久二区二区91 | 99草免费视频 | 欧美不卡在线 | 日韩高清一区二区 | 亚洲欧洲精品一区 | 成人在线免费看 | 日韩中文一区二区三区 | 国产精品免费播放 | 99re在线视频观看 | 在线欧美视频 | 国产成人亚洲精品自产在线 | 另类视频在线 | 欧美一区二区在线免费观看 | 亚洲色片网站 |