用VBScript创建的对象并不是真正的面向对象,它不能继承和实现多态,但是在QTP对象模型Utility中,提供了一个RegisterUserFunc方法可以覆写对象的方法,但这也不是真正意义上的面向对象。Class及其成员如何创建,上面已经简单介绍过,若要对其中的一些语句进一步了解,还需要去仔细阅读一些参考文档。下面我们来看看如何调用对象,在《VBScript基础上》变量赋值中也已经提到过。
?
1
2
3
4
|
Dim u '定义对象变量名,注意变量名不能与类名相同,即使是大小写不同 Set u = New User '创建对象用New语句 u.UserName = "known" '给属性赋值 MsgBox u.ToString() '调用方法 |
2. Dictionary对象
Dictionary是存储数据键和项目对的对象,其主要属性有Count、Item、Key,主要方法有Add、Exists、Items、Keys、Remove、RemoveAll。下面是该对象的一个综合示例:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
'定义并创建Dictionary对象,使用CreateObject创建并返回自动化对象的引用 Dim d Set d = CreateObject( "Scripting.Dictionary" ) '向Dictionary对象中添加键值对 d.Add "a" , "Known" 'Add方法第一个参数是Key值,第二个是Item值 d.Add "b" , "Christina" d.Add "c" , "test" d.Add "d" , "fuck" Call ShowDictionary(d) '遍历Dictionary对象,更改Item值 For i = 0 To d.Count - 1 'Count返回Dictionary对象中的项目数 If d.Exists( "c" ) Then 'Exists判断Dictionary对象中是否存在指定关键字 d.Item( "c" ) = "Test" 'Item返回Dictionary对象中指定Key的Item值 End If Next d.Remove( "d" ) 'Remove从Dictionary对象中删除一个关键字,项目对。 Call ShowDictionary(d) '输出Dictionary对象所有键值 Sub ShowDictionary(dic) Dim str, a a = dic.Items 'Items返回一个包含所有Item值的数组 For i = 0 To dic.Count - 1 str = str & a(i) & vbCrlf Next MsgBox(str) End Sub |