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

詳細講述VB.NET IEnumerator接口

開發 后端
這里介紹要實現VB.NET IEnumerator接口,需在實現以下幾個函數來支持VB.NET IEnumerator接口的操作,一個具體的實現VB.NET IEnumerator接口的對像。

經過長時間學習VB.NET IEnumerator接口,于是和大家分享一下,看完本文你肯定有不少收獲,希望本文能教會你更多東西。在面向對象的設計中,經常會用到有類似父子關系的這個對象,比如在我現在的一個項目中,有訂單對象,在一個訂單下又包含多個產品,這時我就想用Iterator模式來封裝訂單下的產品,在dot Net中的IEnumerator接口就是用來實現迭代的,來支持dot Net中的for each的操作。

要實現VB.NET IEnumerator接口,需在實現以下幾個函數來支持VB.NET IEnumerator接口的操作

  1. Overridable ReadOnly Property Current() As Object  
  2. 'Current用于在迭代過程中得到當前的對象  
  3. Public Overridable Function MoveNext() As Boolean 

MoveNext用于在迭代過程中將迭代指針指向下一個對象,初始是迭代指針指向集合的開始(在第一個節點之前的位置),一旦越過集合的結尾,在調用 Reset 之前,對 MoveNext 的后續調用返回 false。

  1. Overridable Sub Reset() 

#t#將枚舉數設置為其初始位置,該位置位于集合中第一個元素之前。

只要集合保持不變,枚舉數就將保持有效。如果對集合進行了更改(例如添加、修改或刪除元素),則該枚舉數將失效且不可恢復,并且下一次對 MoveNext 或 Reset 的調用將引發 InvalidOperationException。

下面是一個具體的實現VB.NET IEnumerator接口的對像

  1. Imports System.Collections  
  2.  
  3. '在此實際實現的是System.Collections.IEnumerable接口,
    IteratorProduct 用此接口來向使用者提供對IEnumerator接口的操作。  
  4.  
  5. Public Class IteratorProduct : Implements System.Collections.IEnumerable  
  6. Private Products As Collection '用Collection在存訂單中的所有產品  
  7. Private item As Integer = -1  
  8.  
  9. Public Sub New()  
  10. Products = New Collection  
  11. Products.Add("xh") '這只是為了測試方便,將加入產品的內容直接寫在這了  
  12. Products.Add("lj")  
  13. Products.Add("qd")  
  14. End Sub  
  15.  
  16. Overridable ReadOnly Property Current() As Object  
  17. Get  
  18. Return Products(item)  
  19. End Get  
  20. End Property  
  21.  
  22. Public Overridable Function MoveNext() As Boolean  
  23. item += 1  
  24. End Function  
  25.  
  26. Overridable Sub Reset()  
  27. item = -1  
  28. End Sub  
  29.  
  30. '返回迭代對像給使用者  
  31.  
  32. Overridable Function GetEnumerator() 
    As IEnumerator Implements IEnumerable.GetEnumerator  
  33. Return Me.Products.GetEnumerator  
  34. End Function  
  35.  
  36. End Class  
  37.  
  38. Private Sub Page_Load(ByVal sender As System.Object, 
    ByVal e As System.EventArgs) Handles MyBase.Load  
  39. Dim Products As IteratorProduct  
  40. Products = New IteratorProduct  
  41. Dim ProductName As String  
  42. For Each ProductName In Products  
  43. Response.Write(ProductName)  
  44. Response.Write("<br>")  
  45. Next  
  46. End Sub 
責任編輯:佚名 來源: IT168
相關推薦

2010-01-14 09:55:06

VB.NET IEnu

2009-10-10 16:44:52

VB.NET開發控件

2009-10-13 17:03:55

VB.NET面向對象

2009-10-29 16:23:42

VB.NET實現IEn

2009-10-21 10:45:50

VB.NET Quic

2009-10-14 17:08:44

VB.NET使用Fil

2009-10-16 13:26:53

VB.NET Exce

2009-10-15 11:11:08

VB.NET Text

2009-10-15 16:39:00

VB.NET讀取INI

2009-10-14 11:15:06

VB.NET Grou

2009-10-23 13:22:25

VB.NET實現拖動圖

2009-10-16 09:35:24

VB.NET制作透明窗

2009-10-12 16:39:59

OracleTransVB.NET使用

2009-10-19 08:55:22

VB.NET多重繼承

2009-10-26 18:11:47

VB.NET調用Exc

2009-10-21 18:28:48

VB.NET表間拖放

2009-10-29 09:57:16

VB.NET實現數據綁

2009-10-22 09:20:46

VB.NET Proc

2009-10-27 11:39:03

VB.NET事件處理程

2009-10-26 19:22:29

VB.NET使用Log
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 99国产精品99久久久久久 | 精品一区二区三区四区在线 | 一区二区三区在线观看视频 | 一级做a爰片性色毛片16 | 欧美精品一区三区 | 午夜一区 | 国产 日韩 欧美 中文 在线播放 | 99精品国自产在线观看 | 一区二区成人 | 99re视频在线观看 | 日韩成人在线播放 | 国产精品一区二区av | 亚洲综合色视频在线观看 | 成人久久久久 | 美女视频h| 亚洲视频免费在线观看 | 久久高清 | 精品国产色 | 四色成人av永久网址 | 天天玩天天干天天操 | 黄网站在线播放 | 91久久夜色精品国产网站 | 四季久久免费一区二区三区四区 | 在线小视频 | 免费人成在线观看网站 | 在线观看免费av网 | 日韩av免费在线观看 | 天天操网 | 国产91丝袜在线熟 | 国产亚洲精品精品国产亚洲综合 | 日本特黄a级高清免费大片 特黄色一级毛片 | 九九久久久 | 免费激情网站 | 亚洲综合五月天婷婷 | 日韩最新网址 | 伊人伊成久久人综合网站 | 性一交一乱一透一a级 | 极品销魂美女一区二区 | 成年人在线视频 | www视频在线观看 | 欧美日韩在线观看一区 |