前几天大佛写了“ASP设计模式”,可能有些初学者或者刚刚接触ASP的朋友不一定完全看得明白,偶就整理了一下编写一个ASP类的方法,大部分是从网上找来的。希望对朋友们有帮助。
《ASP设计模式》(作者我佛山人):
dispbbs.asp?boardID=20&ID=247879
首先ASP的类是由事件和方法(它们就是构成类的成员了)构成的,如果大家还没有接触过,可以先看看下面的说明:
在Class块中,成员通过相应的声明语句被声明为Private(私有成员,只能在类内部调用)或Public(公有成员,可以在类内外部调用)。被声明为Private的将只在Class块内是可见的。被声明为Public不仅在Class块的内部是可见的,对Class块之外的代码也是可见的。没有使用Private或Public明确声明的被默认为Public。在类的块内部被声明为Public的过程(Sub或Function)将成为类的方法。Public变量将成为类的属性,同使用PropertyGet、PropertyLet和PropertySet显式声明的属性一样。类的缺省属性和方法是在它们的声明部分用Default关键字指定的。
请大家耐心看完上面的部分,下面我们来看一个例子:
<%
'//--------------------------------开始一个类---------------------------------//
ClassmyClass
'//----声明(声明就是定义)myClass类的类内部(私有的[Private])变量
PrivatestrAuthor
PrivatestrVersion
PrivatestrExample
'//---------------------------定义类的事件-------------------------------//
'//----Class_Initialize()是类的初始化事件,只要一开始使用该类,首先会触发该部分的执行,下面我们会在该成员中初始化该类的作者和版本以及在屏幕上显示一下该类已经开始了
PrivateSubClass_Initialize()
strAuthor="coldstone"
strVersion="1.0"
Response.Write"<br>myClass开始了<br>"
EndSub
'//----Class_Terminate()是类的结束事件,只要一退出该类,就会触发该事件,下面我们会该事件中设定退出该类时会在屏幕上显示该类已结束了。
PrivateSubClass_Terminate()
Response.Write"<br>myClass结束了<br>"
EndSub
'//---------------------------用户自己定义的方法-------------------------------//
'//----该方法返回一个版权信息
PublicSubInformation()
Response.Write"<br>CodingBy<ahref='mailto:coldstone@falsh8.cn'>coldstone</a>@<ahref='http://www.flash8.net'>闪吧</a>.<br>"
EndSub
'//---------------------------定义类的输出属性-------------------------------//
'//----定类的属性,该属性是让用户初始化strExapmle变量
PublicPropertyLetsetExapmle(ByValstrVar)
strExapmle=strVar
EndProperty
'//---------------------------定义类的输出属性-------------------------------//
'//----定义类的属性,该属性是返回一个版本号
PublicPropertyGetVersion
Version=strVersion
EndProperty
'//----定义类的属性,该属性是返回该类的作者号
PublicPropertyGetAuthor
Author=strAuthor
EndProperty
'//----定义类的属性,该属性是返回一个版本号
PublicPropertyGetExapmle
Exapmle=strExapmle
EndProperty
EndClass
%><%
'//-------这里是使用该类的例子
DimoneNewClass
SetoneNewClass=NewmyClass
Response.Write"作者:"&oneNewClass.Author&"<br>"
Response.Write"版本:"&oneNewClass.Version&"<br>"
oneNewClass.setExapmle="这是一个简单类的例子"
Response.Write"用户自定义:"&oneNewClass.Exapmle&"<br>"
oneNewClass.Information
SetoneNewClass=Nothing
%>