使用 VB.NET 的设计模式






2.07/5 (28投票s)
2002年10月1日
1分钟阅读

109124
使用 VB.NET 创建设计模式
设计模式是允许程序共享设计知识的工具。 在本文中,我们将尝试使用 VB.NET 实现单例模式。 单例模式适用于许多需要该类只有一个实例的情况。
我们如何确保该类只能有一个实例? 一种解决方案是使用全局变量,但它无法阻止客户端创建多个实例。 更好的解决方案是使类足够智能,以限制客户端创建多个实例。 这就是单例模式。
以下是使用 VB.NET 实现单例类的示例:
Public Class clsSingleton
Private Shared objSingle As clsSingleton
Private Shared blCreated As Boolean
Public strI As String
Private Sub New()
'Override the default constructor
End Sub
Public Shared Function getObject() As clsSingleton
If blCreated = False Then
objSingle = New clsSingleton()
blCreated = True
Return objSingle
Else
Return objSingle
End If
End Function
End Class
现在让我们检查上面的类。 在上面的类中,我们将构造函数设为私有,以便客户端无法使用 new 运算符创建该类的实例。 调用 getObject 函数来获取类的实例。 基于布尔变量 blCreated,只有在第一次调用时才会创建实例。 在后续对 getObject 的调用中,不会创建新的实例,而是返回旧的实例,从而确保只创建该类的一个实例。
你可以通过编写可以创建该类多个实例的客户端来测试该类。 通过将值设置为类中的字符串变量,你将发现该类的实例只创建一次。 现在我们有了实现,我们可以在哪里使用它? 许多情况下,微软都有效地使用了单例模式,例如,Windows 中只有一个文件系统,只有一个窗口管理器等。