佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > ASP 使用三層架構(gòu) asp中使用類

ASP 使用三層架構(gòu) asp中使用類

熱門(mén)標(biāo)簽:Linux服務(wù)器 團(tuán)購(gòu)網(wǎng)站 Mysql連接數(shù)設(shè)置 銀行業(yè)務(wù) 科大訊飛語(yǔ)音識(shí)別系統(tǒng) 服務(wù)器配置 阿里云 電子圍欄
但是Class這個(gè)東西,如果用得比較少,充其量只是一個(gè)大模塊的包裝方式. 只有大規(guī)模地用它來(lái)開(kāi)發(fā),才能顯出它對(duì)項(xiàng)目管理的優(yōu)越性來(lái). 所謂的意大利面條式代碼,就會(huì)和asp劃上句號(hào)了.
我想目前大部分的asp程序員中都還沒(méi)有使用Class,對(duì)面向?qū)ο筮@種術(shù)語(yǔ)也不太熟悉,需要增加一章來(lái)描述一下asp中的類所扮演的角色,以及和面向?qū)ο缶幊痰年P(guān)系.
我會(huì)用盡量貼近編程實(shí)踐的方式來(lái)解釋Class的運(yùn)用,但不會(huì)動(dòng)用面向?qū)ο笾惖某橄笮g(shù)語(yǔ),如果你有了面向?qū)ο蟮睦碚摶A(chǔ),可以把這些內(nèi)容與其結(jié)合,或者會(huì)有你獨(dú)特的發(fā)現(xiàn). 如果沒(méi)有了解過(guò)面向?qū)ο?也不用一定要知道面向?qū)ο笫窃趺椿厥?只要通過(guò)閱讀本系列的文章,學(xué)會(huì)了Class的用法,并且在編程中依據(jù)了其中的法則,就可以足夠健壯地管理你的asp代碼了.
Class相當(dāng)于一個(gè)包裝箱,它可以將變量和函數(shù)包裝起來(lái),形成一個(gè)整體,本系列文章要講的所有內(nèi)容,可以說(shuō)是包裝的學(xué)問(wèn).
例如,我們可以包裝一個(gè)數(shù)學(xué)處理的Class,并使用它:
復(fù)制代碼 代碼如下:

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

逐行解釋語(yǔ)法:
1, 定義了一個(gè)包裝箱,名字叫 Con_Math ,大家都知道Math是數(shù)學(xué)的意思,Con_前綴是我的編程習(xí)慣,對(duì)于可能會(huì)在整個(gè)程序中使用的Class,冠一個(gè)Con_前綴,代表它是一個(gè)通用性的Class. 純屬編程習(xí)慣,但是加個(gè)前綴不光是一個(gè)習(xí)慣問(wèn)題,等會(huì)在后面會(huì)做解釋.
2,3 放進(jìn)去了2個(gè)變量,名字為A,B, 它們前面的Public代表它們是公共的變量,可以被外面的程序訪問(wèn)到.
4 變量intC被定義為Private,表示它是包裝箱內(nèi)部的私有變量,不可以從外面看到它,也不可以強(qiáng)行扯出來(lái),無(wú)論你有多大力氣都不行的.偷出來(lái)?你試試看.
6,7,8,9 這四行定義了一個(gè)進(jìn)行加法運(yùn)算的函數(shù),除了一個(gè)Public,其他的都是你天天用的東西,如果你不眼熟...... 還是別看這個(gè)系列了,先去做做基礎(chǔ)功課比較好. 同上面的兩個(gè)變量一樣,加一個(gè)Public表示包裝箱在這里開(kāi)了一個(gè)洞,你可以從外面看到它,使用它.
10 End Class 打上封箱的膠帶,一個(gè)整整齊齊的Class就包裝完成了
只不過(guò),這個(gè)包裝箱只是一個(gè)構(gòu)思,不能當(dāng)現(xiàn)成的用. 借用唐僧大師的話:(悟空他要吃我)只是一個(gè)構(gòu)思,還沒(méi)有成為現(xiàn)實(shí)(他又何罪之有呢),不如等它實(shí)例化以后,再用也不遲啊(再定他的罪不遲啊).
實(shí)例化,就表示實(shí)際的吃肉行為.
我們可以在asp代碼中輕易地實(shí)例化我們的構(gòu)思,可惜西天路上千千萬(wàn)萬(wàn)的妖怪都沒(méi)有辦法實(shí)例化他們的"吃唐僧肉"的Class,實(shí)在真是可憐憫者!
這是程序員的優(yōu)越性.
12 實(shí)例化了我們定義好的Class,實(shí)例化名是不能和構(gòu)思名一模一樣的,不然在語(yǔ)法方面會(huì)亂套的.所以大家現(xiàn)在知道了,為什么會(huì)給Class加個(gè)前綴的習(xí)慣么? 當(dāng)然,大家完全可以不用Con_做前綴,如下等等都是好材料:Yaomin_ Jimo_ Chunge_ ......或者用你老婆的閨名都可以的,人要活得有想象力一點(diǎn).
13,14 我們把被公開(kāi)的兩個(gè)變量A,B賦值,這里的.號(hào),大家完全可以想象它是包裝箱上開(kāi)的一個(gè)洞,通過(guò)這個(gè)洞,你可以把東西放進(jìn)去取出來(lái).一定要通過(guò)這個(gè)洞的.嗯?太小了?不不,別擔(dān)心,再大的東西也可以放進(jìn)去的.就像人的嘴巴,雖然小,地球那么大的食物也可以被吃光的.
15 我們通過(guò)小洞,把它的函數(shù)運(yùn)算結(jié)果掏出來(lái),顯示在頁(yè)面上,99,吉利啊,這是我的出生年的前兩位和后兩位相加的數(shù)字. 打開(kāi)一個(gè)記事本,把這段代碼寫(xiě)進(jìn)去吧,然后在IIS里面運(yùn)行吧.

16 男同志在家吃完飯,是要洗碗洗鍋的吧. set ** = nothing 也是同樣的道理.這個(gè)和創(chuàng)建Recordset之后要清掉也是一樣的用法. set nothing以后,就表示它從內(nèi)存里面丟棄了,這個(gè)萬(wàn)能包裝箱所占的位置就空出來(lái)了,你的網(wǎng)站性能當(dāng)然會(huì)提高,還猶豫什么? 用完了趕緊set nothing.
我知道大家都不會(huì)這么玩Function的,至少是Sum(19,80)才更方便使用,好,我們?cè)诎b箱上再打一個(gè)洞出來(lái):
復(fù)制代碼 代碼如下:

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 ?
雖然你這么有誠(chéng)意地看著我,但是你還是要說(shuō)是不是想學(xué),不可能你不想學(xué)我偏要你學(xué),也不能你想學(xué)我偏不讓你學(xué),難道你真的想學(xué)?確認(rèn)?
那就不要Ctrl+C吧.
您可能感興趣的文章:
  • ASP 三層架構(gòu) Error處理類
  • ASP 三層架構(gòu) Convert類實(shí)現(xiàn)代碼
  • Asp.net 在三層架構(gòu)中事務(wù)的使用實(shí)例代碼
  • 基于C#實(shí)現(xiàn)的三層架構(gòu)實(shí)例
  • Java Web三層架構(gòu)的配置詳解
  • asp.net實(shí)現(xiàn)三層架構(gòu)的例子
  • ASP.NET創(chuàng)建三層架構(gòu)圖解詳細(xì)教程
  • C# ComboBox的聯(lián)動(dòng)操作(三層架構(gòu))
  • ASP.NET存儲(chǔ)過(guò)程實(shí)現(xiàn)分頁(yè)效果(三層架構(gòu))
  • ASP.NET三層架構(gòu)詳解 如何實(shí)現(xiàn)三層架構(gòu)

標(biāo)簽:江蘇 蚌埠 萍鄉(xiāng) 棗莊 衢州 大理 衡水 廣元

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《ASP 使用三層架構(gòu) asp中使用類》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    桓台县| 永康市| 通山县| 河池市| 乌鲁木齐市| 荆州市| 芷江| 神农架林区| 张家口市| 铜陵市| 兰西县| 财经| 大理市| 凯里市| 新余市| 平利县| 新安县| 沛县| 横山县| 和政县| 耿马| 东至县| 浙江省| 乌拉特中旗| 林周县| 灵宝市| 获嘉县| 崇仁县| 元阳县| 柳州市| 太湖县| 大田县| 海门市| 昌宁县| 会昌县| 苍南县| 嘉鱼县| 曲沃县| 宜城市| 伊吾县| 兰溪市|