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

經驗之談VB.NET Protected方法

開發 后端
這里就VB.NET Protected方法做出了詳細的分析,當變量或者方法被聲明為Protected的時候,對于任何類外部的代碼將不能調用,但是還是可以被由它繼承而來的子類調用。

VB.NET繼承還是比較常用的,于是我研究了一下VB.NET Protected方法,在這里拿出來和大家分享一下,希望對大家有用。當我們通過繼承來創建一個子類的時候,新類就可以從父類中得到了所有的Public(公共)和Friend(友)方法、屬性和變量。

#T#如果你在父類中聲明一個Private(私有)的方法、屬性和變量,那么在新的子類中就不能得到這個類的方法、屬性和變量。當然也有個例外,就是New方法。構造函數方法必須在每一個子類中重新編寫。這個內容我們在本教程的后面將深入討論。舉個例子,我們可能從LineItem類中重寫Amount方法,具體如下:

  1. Public Function Amount() As Single   
  2. Return CalcAmount   
  3. End Function  
  4.  
  5. Private Function CalcAmount() As Single  
  6. Return fQuantity * fPrice  
  7. End Function   

從這個改變中,我們可以看到公共的方法Amount使用了Private方法來工作。當我們利用LineItem來創建子類ServiceLine的時候,任何的ServiceLine對象都有一個Amount方法,因為它在基類中聲明為Public。另外一方面,這個CalcAmount方法被聲明為Private,所以所有的ServiceLine類和任何的客戶代碼都不能訪問它。這里值得一提的是,既然Amount方法存在于LineItem類中,它就可以訪問CalcAmount方法即使在ServiceLine類中不能看到這個方法。

舉個例子,在我們的客戶代碼中我們可以這樣做:

  1. Protected Sub Button1_Click(ByVal sender As Object, _  
  2. ByVal e As System.EventArgs)  
  3. Dim sl As ServiceLine  
  4.  
  5. sl = New ServiceLine()  
  6. sl.Item = delivery sl.Price = 20 
  7. sl.DateProvided = Now 
  8. MsgBox(sl.Amount, MsgBoxStyle.Information, amount)  
  9. End Sub  

結果顯示在一個消息框中,這樣就闡明了CalcAmount方法被成功調用了,雖然客戶代碼和ServiceLine代碼沒有直接調用它。

VB.NET Protected方法

有時,Public和Private并不能滿足我們的要求。如果我們想聲明一些變量或者方法為Private,那么這些變量和方法就只能在我們的類中使用;但是當我們聲明一些變量和方法為Public或者Friend,那么這些變量和方法就可以在子類和客戶代碼中使用。但是,有時有聲明一些變量和方法,讓它們在子類中有效,而在客戶代碼中不能用,該怎么辦呢?這里可以使用VB.NET Protected方法轄域。當變量或者方法被聲明為Protected的時候,對于任何類外部的代碼將不能調用,但是還是可以被由它繼承而來的子類調用。舉個VB.NET Protected方法例子吧,如下:

  1. Public Class ParentClass  
  2. Protected TheValue As Integer  
  3. End Class  
  4.  
  5. Public Class SubClass  
  6. Inherits ParentClass  
  7.  
  8. Public Function GetValue() As Integer  
  9. Return TheValue  
  10. End Function  
  11. End Class  

在上面的代碼中我們有一個父類,它有一個Protected成員變量TheValue。這個變量在任何的客戶代碼中都不能被調用。但是這個變量對于任何的子類都是有效的因為它繼承了這個父類。在這個例子中,SubClass有一個Public方法返回了Protected變量的數值,但是這個變量對于類的外部任何客戶代碼都是無效的。

責任編輯:田樹 來源: 博客
相關推薦

2009-11-02 15:16:07

VB.NET編程

2009-10-28 17:00:30

VB.NET數據庫

2009-11-02 18:12:45

VB.NET FLAS

2009-10-27 17:08:35

VB.NET流操作文件

2009-12-23 10:07:57

學習WPF

2009-10-13 17:08:10

CLR VB.NET

2009-11-09 17:06:38

WCF選擇綁定

2009-12-17 18:12:31

Ruby框架應用

2010-03-02 17:48:35

WCF尋址報頭

2010-04-30 14:31:58

Unix系統

2009-12-09 16:58:03

PHP strtoti

2009-10-10 15:43:51

2009-10-14 11:27:20

VB.NET Grou

2010-01-14 18:14:22

VB.NET開發特點

2009-10-16 14:31:48

VB.NET Noti

2009-10-26 13:13:17

VB.NET編碼規范

2010-04-22 18:07:28

Aix系統維護

2012-05-23 09:43:59

Linux升級經驗

2009-11-16 15:32:05

PHP數組函數

2009-11-05 15:50:25

WCF behavio
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91精品国产综合久久婷婷香蕉 | 日日操视频 | 亚洲网站免费看 | 国产aⅴ精品 | 精品国产欧美一区二区 | 日韩综合一区 | 九九精品在线 | 美女一级黄 | 91大神新作在线观看 | 精品区| 亚洲欧洲精品在线 | 日本不卡一区 | www.99热.com | 成人一区二区三区 | 黄色中文字幕 | 国产精品亚洲精品 | 国产a级毛毛片 | 一区二区三区免费 | 激情欧美一区二区三区中文字幕 | 日韩毛片网| 亚洲黄色av| a视频在线观看 | 久久丝袜 | 欧美爱爱视频网站 | aa级毛片毛片免费观看久 | 色综合区| 日韩a视频| 91精品国产综合久久精品图片 | 日韩一二区在线 | 国产视频精品在线 | 精品一区二区在线看 | 嫩草视频在线 | 国产1区2区在线观看 | 精品av| 婷婷久久网 | 亚洲一区成人 | 久久精品国产精品青草 | 成人免费在线观看 | 国产区精品 | 免费在线性爱视频 | 国产高清精品网站 |