使用类实现模块化

铁月情

铁月情

2016-02-19 12:07

图老师小编精心整理的使用类实现模块化希望大家喜欢,觉得好的亲们记得收藏起来哦!您的支持就是小编更新的动力~

写在前面的话:

  所有写程序的人都知道,当你逐渐对您要实现的功能展开的时候,很大的时候,第一天写的东西第二天就忘了写到那里了,很多的时候,不得不写上详细的程序开发笔记,这在ASP的系统开发中感觉尤其文件、函数复杂的时候,当我们打算对网站的一部分功能进行修改的时候,感觉无从下手或者感觉要修改的地方。这时候,如果您学过任何一门面向对象的编程的语言的话,自然想到怎么能把代码功能实现模块话,asp本质上不是面向对象的编程,但VBSCRPIT6.0提供了类,我们可以通过类实现代码的封装,实现模块话。

  首先,我要在这里写上一些很官方的概念,意在说明面向对象是很具体化的,很实体的模式,不能让有些人看见“对象”就被吓跑了。

  对象,就是能看到,感到,听到,触摸到,尝到或闻到的东西,在这里我们这样“定义”:对象是一个自包含的实体,用一组可识别的特性和行为来标识。

  在面向对象的编程(oop)的编程方式,用使用下面的两个术语。

  类:这是对象的模板,定义了对象的特性。

  实例:这是一个真实的对象,可以与之交互的东西。

  属性,方法和事件

  在OOP中,下面的术语描述对象的特性:

  属性:这是一个名次,描述了某个对象的属性。

  方法:这是一个动词,描述了对象可以完成的工作,或者希望它完成的工作。

  事件:描述了对象为相应某个动作而执行的操作。

  在编程时,对象的面向对象编程和面向对象设计的一部分,它们具有非常大的优势,许多人认为这是一个复杂的主题,但实际上,它非常简单,可以用四个简单的术语来解释:抽象、封装、多态和继承。

  抽象:这是一个隐藏复杂性,类的内部工作情况,所以用户不必知道它的运作方式,就像。如果想要看电视,就不必知道电视机时如何工作的,只需打开电视机,搜索频道即可,on/off开关抽象了实际的操作,在string例子里,有一个trim方法,它可以删除字符串尾部的空格,同样不需要知道他是如何完成这个任务的,只要知道它有这个功能即可。

  封装:每个对象都包含进行操作所需要的所有信息,这个对象称为封装,因此对象不比依赖其他对象来完成自己的操作,在术语TOupper()方法中,string不必到其他地方获取信息来把所有的字符转换为大写。

  多态:这个术语用于表示不同的对象可以执行相同的动作,但要通过他们自己的实现代码来执行,名称一样,但底层实现的代码是不一样的。

  继承:它定义了类如何相互关联,共享特性的,继承的工作方式是,定义类和子类,其中子类继承了父类的所有特性,继承的重要性是,它迫使类型相似的类具有一致性,并允许共享代码,如果决定创建一个新类,就不必定义父类的所有特性。

  在ASP中使用类,实现模块化

  下面我通过举上几个简单的例子说明一下,注意,这里强调的是一种思想,如果在您开发ASP网站的时候能用一个类(基类)展开的话,这是很有必要的(也是很有难度的)。

  我们先选择一个简单的例子:

  我们要显示经典论坛用户的信息,当输入用户的ID以后能,显示出该用户的一些信息,这是一个过程,可以这样考虑,我们把用户当作一个对象,他有的属性是ID,性别,积分,权限,实现的方法有显示这些信息,ok,这样写:
Class blueidea
Private bname,bpoint,bsex,blevel
'...................
end class

  这里先声明了一个名为 blueidea的类,接着是一些私有变量,用于存储blueidea类的属性,这些变量在代码的外部不能访问,这就是数据保护,要定义这些变量,使用了property语句获得值间接的付给私有变量
'-----------------------------------------------------------------
Property Get getname
getname=bname
End Property

Property Let getname(nameid)
bname=nameid
If nameid="" Then
bname="没注册用户"
End If
End Property
'------------------------------------------------------------------ 
Property Get getsex
getsex=bsex
End Property

Property Let getsex(sex)
bsex=killint(sex,0,0)
If bsex=0 Then
bsex="男"
Else
bsex="女"
End if
End Property
'------------------------------------------------------------------ 
Property Get getpoint
getpoint=bpoint
End Property

Property Let getpoint(point)
bpoint=killint(point,0,0)
End Property
'------------------------------------------------------------------

  这里有个killint函数,是判断数据合法性的,它的原形是:
Private Function killint(i,killstr,killsub)
If Not IsNumeric(i) Then
i=killstr
ElseIf i=0 Then
i=killsub
End if
killint=Int(Left(i,5))
End Function

  该函数功能很明确,不再繁琐说。 

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)

由于我们要通过积分判断用户级别,这里定义了一个私有函数:
Private Function getlevel()
bpoint=killint(bpoint,0,0)
If bpoint500 Then
blevel="初级会员"
ElseIf bpoint=500 And bpoint=100 Then
blevel="高级会员"
Else
blevel="终极会员"
End If
Getlevel=blevel
End Function

  我们要得是回送用户的信息,必须定义一个public公用函数,显示信息:
Public Function showuser()
response.write("h5以下显示font color=red"&bname&"/font的资料:/h5")
response.write("h5性别:font color=red"&bsex&"/font/h5")
response.write("h5积分:font color=red"&bpoint&"/font/h5")
getlevel
response.write("h5级别:font color=red"&blevel&"/font/h5")
End Function
End class

  使用这个类的时候这样使用:(我在这里写了一个表单处理的)
Set blueideauser=new blueidea
blueideauser.getname=Trim(request("id"))
blueideauser.getsex=request("sex")
blueideauser.getpoint=request("point")
blueideauser.showuser

  是不是想看看效果,那就看看这里:  http://www.5do8.com/net/aspclass/class.asp

  控制读取数据库信息的类:
  参考源码
'名称:ado_5do8
'作用:读取数据库的各项操作
'

展开更多 50%)
分享

猜你喜欢

使用类实现模块化

Web开发
使用类实现模块化

[ASP]使用类实现模块化

Web开发
[ASP]使用类实现模块化

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

CSS模块化如何实现?

Web开发
CSS模块化如何实现?

模块化字体设计欣赏

平面设计 海报设计 海报设计素材 广告设计 平面设计素材
模块化字体设计欣赏

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

CSS模块化的理解

Web开发
CSS模块化的理解

CSS模块化思想的优势

Web开发
CSS模块化思想的优势

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

在MySQL中修改密码及访问限制的设置方法详解

在MySQL中修改密码及访问限制的设置方法详解

Windows 8 中按流量计费的宽带连接设置方法

Windows 8 中按流量计费的宽带连接设置方法
下拉加载更多内容 ↓