在VBScript中使用類
2024-05-04 11:02:53
供稿:網友
首先,在我進入實質性主題并解釋如何建立類之前,我希望保證你知道“對象”。雖然你可以在程序中使用對象而不用知道其正確的規則,但我并不建議如此!對于對象的初學者,接下來的部分將讓你了解其概念及內容。已經了解面向對象編程(OOP)的讀者可以跳過這章節。
導論
l “對象是什么?”——對象通常代表某種實體,主要是一個變量和函數的集合。
l “實體是什么?”——字面上說,實體是一個“事物”,我的意思是一個概念或者任何一個物體。例如,一輛汽車是一個實體,因為它是一個物體。你公司銷售部門銷售產品也是一個實體,當然,你也可以將其拆開來看,銷售人員、客戶、產品等都是實體。
讓我們更深入的來看“銷售”這個實體(對象)。為了使你更準確地有一個銷售的“映像”,你需要知道客戶買了什么,是哪個客戶,誰是銷售人員等等……這看來是一個簡單的事件,但假設所有信息是存儲在單獨的數據庫表中的,那么當你需要獲得某個銷售過程所有相關信息時,你必須在你的數據庫中做多次獨立查詢,再將所有的數據集攏。有沒有更簡便的辦法而一次獲得銷售的所有信息呢?“對象”。
在對象中,你可以植入代碼以從其他表中獲得數據,你也可以保存對象屬性的所有信息,這樣,你可以輕松地使用代碼管理你的銷售數據。例如:
''''''''Open the database connection
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "MyDSN"
''''''''Create the recordset object
Set objRS = Server.CreateObject("ADODB.Recordset")
''''''''Define the SQL query
strComplexSQLQuery = "SELECT C.Name, S.Name FROM Customers C, " & _
"Salespeople S, Sales Sl WHERE Sl.CustomerID=C.ID AND " & _
"Sl.SalespersonID=S.ID AND Sl.ID=" & strIDOfThisSale & ";"
''''''''Open the recordset
objRS.Open strComplexSQLQuery, objConn, adOpenForwardOnly, _
adLockReadOnly, adCmdText
''''''''Take the customer and sales person names from the recordset
strCustomerName = objRS(0)
strSalesPersonName = objRS(1)
''''''''Tidy up the objects
objRS.Close
objConn.Close
Set objRS = Nothing
Set objConn = Nothing
''''''''Output the data
Response.Write "This sale was made by " & strSalesPersonName & _
" to " & strCustomerName
可以使用“對象”來替代:
''''''''Create the "Sale" object
Set objSale = New Sale