91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

為什么VB.NET模塊在C#等語言中是沒有的

發布時間:2021-12-02 14:02:29 來源:億速云 閱讀:248 作者:小新 欄目:編程語言

小編給大家分享一下為什么VB.NET模塊在C#等語言中是沒有的,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

首先,這是一個歷史原因。早先的VB語言都有模塊和類模塊的概念。所謂模塊一般就是存放公用的一些方法(Sub)或者函數(Function),而類模塊,相當于就是我們經常所說的類的概念。下面這個圖是我從Excel的VBA中截取的,VB6里面也是這樣類似的設計

其次,VB.NET模塊還有一些新的東西。

VB.NET模塊里面可以直接有方法,這些方法自動就是靜態的(或者稱為共享的——VB.NET中的關鍵字是Shared),這些方法可以直接調用,所以Module是無法實例化,也沒有必要實例化的

模塊無法繼承,也無法實現接口

模塊里面可以有類,但其實這個類并不需要真的通過模塊作為前綴來引用。所以模塊有點虛的概念

模塊可以被組織到命名空間中去,因為模塊其實是個虛的,所以它的方法也可以直接外層的命名空間調用。

下面有個例子。注意,這里的代碼只是演示目的而寫的,沒有任何具體意義 。

  1. '''可以用命名空間封裝,這是比較好的做法  

  2. Namespace Xizhang  

  3. ''' < summary> 

  4. ''' 模塊無法繼承,無法實現接口  

  5. ''' < /summary> 

  6. ''' < remarks>< /remarks> 

  7. Module Module1  

  8. ''' < summary> 

  9. ''' 模塊里面的方法都是靜態的,
    無需實例化,也無從實例化  

  10. ''' < /summary> 

  11. ''' < remarks>< /remarks> 

  12. Sub Main()  

  13. Dim c As New class1  

  14. c.Name = "chenxizhang" 

  15. Console.WriteLine(c.Name)  

  16. Console.WriteLine(c.GetClassName())  

  17. Console.Read()  

  18. End Sub 

  1. ''' < summary> 

  2. ''' 類型可以放在模塊里面,但主要的現實意義在于
    分類存放而已,放在模塊里面并不影響該類型對外的引用。
    例如我們并不一定需要用Xizhang.Module1.Class1,
    而是直接通過Xizhang.Class1就可以對其進行引用  

  3. ''' < /summary> 

  4. ''' < remarks>< /remarks> 

  5. Public Class class1 : Implements IComparable  

  6. ''' < summary> 

  7. ''' 類型可以繼承一個基類,可以實現一個或者多個接口  

  8. ''' < /summary> 

  9. ''' < remarks>< /remarks> 

  10. Private _name As String  

  11. Public Property Name() As String  

  12. Get  

  13. Return _name  

  14. End Get  

  15. Set(ByVal value As String)  

  16. _name = value 

  17. End Set  

  18. End Property  

  19. Public Function GetClassName() As String  

  20. Return Me.GetType().ToString()  

  21. End Function  

  22. Public Function CompareTo(ByVal obj As 
    Object) As Integer Implements System.
    IComparable.CompareTo  

  23. Return 1  

  24. End Function  

  25. End Class  

  26. End Module  

  27. End Namespace 

以上是“為什么VB.NET模塊在C#等語言中是沒有的”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

蓬莱市| 开鲁县| 响水县| 南郑县| 宜章县| 剑河县| 静乐县| 云龙县| 武隆县| 诸城市| 苏尼特左旗| 隆化县| 绵阳市| 疏勒县| 祁东县| 河池市| 曲周县| 金湖县| 普兰县| 克拉玛依市| 克山县| 滕州市| 东平县| 稻城县| 龙州县| 重庆市| 噶尔县| 曲沃县| 葫芦岛市| 大庆市| 扶沟县| 和硕县| 嘉义县| 岳普湖县| 台中县| 镇雄县| 苏尼特右旗| 永吉县| 广安市| 灌云县| 那曲县|