这几天在整理计算机上的资料时,发现了一些自己以前学习时用过的资源,随着时间的推移,有些东西也已经忘得差不多了,趁现在有空整理一下,顺便重新温习一下这些知识。随着.net的出现,很多人都已经将目光转向了它的OOP和方便的可视化编程模式,我也不例外。即便如此,个人认为ASP并非就没有用处了,尤其在做一些中、小型项目的时候,不管从成本还是其它一些因素上考虑,ASP都是个比较理想的选择。之前从事ASP项目开发的时候,并不晓得CLASS这种方式,直到一次偶然的机会,让我意识到原来ASP中也有这玩意儿,吃惊。。。
可能有些初学者或者刚刚接触ASP的朋友不一定会明白,偶编写一个简单的ASP类实现方法,希望对朋友们有帮助(参考资料来源于互联网)。
首先ASP的类是由事件和方法(它们就是构成类的成员了)构成的,在 Class 块中,成员通过相应的声明语句被声明为 Private(私有成员,只能在类内部调用) 或 Public(公有成员,可以在类内外部调用) 。被声明为 Private 的将只在 Class 块内是可见的。被声明为 Public 不仅在 Class 块的内部是可见的,对 Class 块之外的代码也是可见的。没有使用 Private 或 Public 明确声明的被默认为 Public。在类的块内部被声明为 Public 的过程(Sub 或 Function)将成为类的方法。Public 变量将成为类的属性,同使用 Property Get、Property Let 和 Property Set 显式声明的属性一样。类的缺省属性和方法是在它们的声明部分用 Default 关键字指定的。
' //----------------------------ASP中类的使用---------------------------------//
Class ALoaferClass
' //----声明(声明就是定义)CaboClass类的类内部(私有)变量
/ /---- 声明时一般将变量定义成[Private]私有,通过属性读写器将变量[Public] 公开.
Private strAuthor
Private strVersion
Private strExample
' //---------------------------定义类的事件-------------------------------------//
' //---Class_Initialize()是类的初始化事件,类被调用,首先会触发该部分的执行,一般用来初始化默认值.
Private Sub Class_Initialize()
strAuthor = " Cabo'liu "
strVersion = " v1.0 "
Response.Write( " <br>ALoafer Class开始了<br> " )
End Sub
' //----Class_Terminate()是类的结束事件,退出该类,就会触发该事件。
Private Sub Class_Terminate()
Response.Write( " <br>ALoafer Class结束了<br> " )
End Sub
' //---------------------------用户自己定义的方法-------------------------------//
' //----该方法返回一个版权信息
Public Sub Information()
Response.Write( " <br>Coding By <a href='mailto:caboliu@163.com'>Cabo Liu</a> @ " )
Response.Write( " <a href='http://caboliu.cnblogs.com'>々浪子…№</a>.<br> " )
End Sub
' //---------------------------定义类的输出属性--------------------------------//
' //----定类的属性,该属性是让用户初始化strExapmle变量
Public Property Let SetExapmle(ByVal strVar)
strExapmle = strVar
End Property
' //----定义类的属性,该属性是返回一个版本号
Public Property Get Version
Version = strVersion
End Property
' //----定义类的属性,该属性是返回该类的作者号
Public Property Get Author
Author = strAuthor
End Property
' //----定义类的属性,该属性是返回自定义值
Public Property Get Exapmle
Exapmle = strExapmle
End Property
End Class
% >
< %
' //---------------------------ASP类的调用--------------------------------//
Dim oneNewClass
Set oneNewClass = New ALoaferClass
Response.Write( " 作者: " & oneNewClass.Author & " <br> " )
Response.Write( " 版本: " & oneNewClass.Version & " <br> " )
oneNewClass.SetExapmle = " 这是一个简单类的例子 "
Response.Write( " 用户自定义: " & oneNewClass.Exapmle & " <br> " )
Response.Write(oneNewClass.Information " )
Set oneNewClass = Nothing
% >