但是Class这个东西,如果用得比较少,充其量只是一个大模块的包装方式. 只有大规模地用它来开发,才能显出它对项目管理的优越性来. 所谓的意大利面条式代码,就会和asp划上句号了.
我想目前大部分的asp程序员中都还没有使用Class,对面向对象这种术语也不太熟悉,需要增加一章来描述一下asp中的类所扮演的角色,以及和面向对象编程的关系.
我会用尽量贴近编程实践的方式来解释Class的运用,但不会动用面向对象之类的抽象术语,如果你有了面向对象的理论基础,可以把这些内容与其结合,或者会有你独特的发现. 如果没有了解过面向对象,也不用一定要知道面向对象是怎么回事,只要通过阅读本系列的文章,学会了Class的用法,并且在编程中依据了其中的法则,就可以足够健壮地管理你的asp代码了.
Class相当于一个包装箱,它可以将变量和函数包装起来,形成一个整体,本系列文章要讲的所有内容,可以说是包装的学问.
例如,我们可以包装一个数学处理的Class,并使用它:
复制代码 代码如下:
Class Con_Math
Public A
Public B
Private intC
Public Function Sum()
intC = cint(A) + cint(B)
Sum = intC
End Function
End Class
set math = new Con_Math
math.A = 19
math.B = 80
Response.write math.Sum
set math = nothing
逐行解释语法:
1, 定义了一个包装箱,名字叫 Con_Math ,大家都知道Math是数学的意思,Con_前缀是我的编程习惯,对于可能会在整个程序中使用的Class,冠一个Con_前缀,代表它是一个通用性的Class. 纯属编程习惯,但是加个前缀不光是一个习惯问题,等会在后面会做解释.
2,3 放进去了2个变量,名字为A,B, 它们前面的Public代表它们是公共的变量,可以被外面的程序访问到.
4 变量intC被定义为Private,表示它是包装箱内部的私有变量,不可以从外面看到它,也不可以强行扯出来,无论你有多大力气都不行的.偷出来?你试试看.
6,7,8,9 这四行定义了一个进行加法运算的函数,除了一个Public,其他的都是你天天用的东西,如果你不眼熟...... 还是别看这个系列了,先去做做基础功课比较好. 同上面的两个变量一样,加一个Public表示包装箱在这里开了一个洞,你可以从外面看到它,使用它.
10 End Class 打上封箱的胶带,一个整整齐齐的Class就包装完成了
只不过,这个包装箱只是一个构思,不能当现成的用. 借用唐僧大师的话:(悟空他要吃我)只是一个构思,还没有成为现实(他又何罪之有呢),不如等它实例化以后,再用也不迟啊(再定他的罪不迟啊).
实例化,就表示实际的吃肉行为.
我们可以在asp代码中轻易地实例化我们的构思,可惜西天路上千千万万的妖怪都没有办法实例化他们的"吃唐僧肉"的Class,实在真是可怜悯者!
这是程序员的优越性.
12 实例化了我们定义好的Class,实例化名是不能和构思名一模一样的,不然在语法方面会乱套的.所以大家现在知道了,为什么会给Class加个前缀的习惯么? 当然,大家完全可以不用Con_做前缀,如下等等都是好材料:Yaomin_ Jimo_ Chunge_ ......或者用你老婆的闺名都可以的,人要活得有想象力一点.
13,14 我们把被公开的两个变量A,B赋值,这里的.号,大家完全可以想象它是包装箱上开的一个洞,通过这个洞,你可以把东西放进去取出来.一定要通过这个洞的.嗯?太小了?不不,别担心,再大的东西也可以放进去的.就像人的嘴巴,虽然小,地球那么大的食物也可以被吃光的.
15 我们通过小洞,把它的函数运算结果掏出来,显示在页面上,99,吉利啊,这是我的出生年的前两位和后两位相加的数字. 打开一个记事本,把这段代码写进去吧,然后在IIS里面运行吧.
16 男同志在家吃完饭,是要洗碗洗锅的吧. set ** = nothing 也是同样的道理.这个和创建Recordset之后要清掉也是一样的用法. set nothing以后,就表示它从内存里面丢弃了,这个万能包装箱所占的位置就空出来了,你的网站性能当然会提高,还犹豫什么? 用完了赶紧set nothing.
我知道大家都不会这么玩Function的,至少是Sum(19,80)才更方便使用,好,我们在包装箱上再打一个洞出来:
复制代码 代码如下:
Class Con_Math
Public A
Public B
Private intC
Public Function Sum()
intC = cint(A) + cint(B)
Sum = intC
End Function
Public Function Sum2(ByVal vA,ByVal vB)
Sum2 = cint(vA) + cint(vB)
End Function
End Class
set math = new Con_Math
Response.write math.Sum2(19,80)
set math = nothing
你还想Ctrl+C ?
虽然你这么有诚意地看着我,但是你还是要说是不是想学,不可能你不想学我偏要你学,也不能你想学我偏不让你学,难道你真的想学?确认?
那就不要Ctrl+C吧.
相关推荐:
什么是seo优化营销,seo主要优化什么 ,ai绘画国风古韵
SEO领站-从零到一打造成功网站排名的秘密,轻淘客seo怎设置
ChatGPT不能用了?了解这一背后的真相及解决方法,ai恐怖头像
SEO桔子:提升网站排名的必备法宝,seo外包销售
seo管理系统是什么,seo网站管理 ,过度圆ai
SEO优化排-打造高效的网络营销利器,精神AI
ChatGPT免费版下载:智能对话助手带来的全新体验,电脑怎么下载Ai微认证
SEO运维:提升网站排名的核心战略,邢台网站建设优化建站
SEO人工优化-让你的网页轻松登上搜索引擎首页,ai主母
ChatGPT免费版的限制:你需要了解的5大制约因素,Ai分解模型
Chat免费,让沟通无界限,尽享智能对话时代,ai没办法置顶
好用的AI写作软件免费推荐:创作新境界!
ChatGPT发生故障,背后隐藏着哪些不为人知的原因与挑战?,硬件ai和软件ai
ChatGLM不能搜索网页内容,你真的了解它的局限性吗?,ai修复情侣
SEO学费多少钱?揭秘SEO培训的投资价值与回报!,郴州网站推广多少钱一个
GPT哪个模型是最新的?AI语言生成的未来,ai回头
怎么使用AI生成文章,轻松提升写作效率!
ChatGPT空白对话:释放创意,开启智能对话的新世界,ai重庆南坪
SEO招标:如何通过专业SEO服务助力企业脱颖而出,牡丹江关键词排名怎么样
好用的AI写作工具,提升写作效率与创意的最佳选择
为什么要监控SEO效果,国家为什么要监控个人 ,抚顺ai系统
ChatGPT:基于Transformer技术的语言模型,开创人工智能未来,AI独战OK
ChatGPT3.5需要登录使用吗?AI使用的真相!,电脑版写作ai推荐怎么关闭
ChatPartner无法连接网络?解决方案,让你的聊天体验更顺畅!,如何用ai给自己写作文
SEO收费如何选择合适的SEO服务,提升网站排名并增加曝光度,做网站优化哪家实惠
SEO关键词是什么意思?全面解析SEO关键字的核心作用,华为ai音箱 百度ai音箱
文字写作AI生成工具:让创作更简单、更高效
SEO就是:让你的品牌脱颖而出,获得更多曝光与流量,梅岭关键词排名优化
《SEO教材:打造网站流量的核心利器,教你轻松SEO优化技巧》,咖啡网站建设总结文案
在线AI文章生成:内容创作新革命
SEO优化:如何让网站更具有吸引力,散文ai写作咒语是什么
AI工具,让工作效率翻倍:AI工具教程全面解析
什么是seo网络推广,seo网络推广技术 ,ai写真官方
什么是seo行业,seo是什么职业做什么的 ,ai标题字体效果
优化高效率:提升个人与企业竞争力的关键,安康网站推广咨询
AI自动帮写,轻松应对内容创作挑战,赋能写作新未来,嘿科技ai
云推SEO:让您的网站在激烈竞争中脱颖而出,网站优化公司欢迎来电
seo黑帽是什么,列举几种seo黑帽行为 ,穿老款的ai丢人吗
SEO定价策略:如何根据企业需求定制最佳价格方案,教育培训抖音营销推广
文章AI排版,让创作更高效的秘密武器
SEO新手必看:从零开始SEO优化的终极指南,随州网站优化技巧
GPT-3.5免费吗?揭秘AI智能助手的未来与收费模式,ai 美美
ChatGPT网站突然不能用了?如何快速解决这个问题,让你重新畅享AI对话!,ai新建多个画板
SEO快速优化文章排名:提升网站流量的必备技巧,ai小苹果会员分享
用AI生成文章,让创作更简单高效
SEO需要:如何提升网站排名,打造高效营销利器,seo怎么推广关键词
AI人工智能:开发与应用的必备软件推荐
seo经理做什么的,seo经理招聘 ,盲人ai眼镜
SEO快排还有效果吗揭秘快速排名的真相与未来趋势,ai人像波普
SEO网:让你的数字营销更加精准高效,开启网络引流新时代,丰县互联网网站推广优势