VBS基础篇 - 对象(1) - Class对象

VBS基础篇 - 对象(1) - Class对象

相信对JAVA有一定了解的朋友一定对类这个名词不陌生,但是大家可能没有想过在VBS中使用Class类吧,其实Class类在自动化测试中是相当常用的,对于代码量增大时,类的结构化就充分体现出了它强大的优势,下面我们就来看一下类的组成部分以及一些用法。

  初始化与终结化的应用

使用Class语句可以创建一个对象,可以为它编写字段、属性及方法,它只有两个对象事件——InitializeTerminate。首先来看一个简单的Class示例:


1

2

3

4

5

6

7

8

9

10

11

Set MyUser = New User

Class User

    ‘Initialize事件相当于构造函数

    Private Sub Class_Initialize  ‘当这个类被创建时执行

        MsgBox "类开始"

End Sub

‘Terminate事件相当于析构函数

    Private Sub Class_Terminate  ‘当类被销毁时执行

        MsgBox "类结束"

    End Sub

End Class

  Get与Set的应用

Class里面使用Let语句,设置属性值、Get语句,获取属性值或对象引用。具体示例如下:


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

30

31

32

33

34

35

Set MyUser = New User

MyUser.MyAge = "22" ‘设置对象的MyAge属性值

MyUser.Myname = "Sirrah" ‘设置对象的Myname属性值

MyUser.ToString ‘调用对象的ToString方法

Class User

    Private Str_Name ‘声明变量Str_Name

    Private Int_Age  ‘声明变量Int_Age

    ‘Property Get语句,获取属性值或对象引用,Default只与Public一起使用,表示该属性为类的默认属性

    Public Property Get Myname

        Myname = Str_Name

    End Property

    Public Property Get MyAge

        MyAge = Int_Age

    End Property

    ‘Property Let语句,设置属性值

    Public Property Let Myname(New_Name)

        Str_Name = New_Name

    End Property

    Public Property Let MyAge(New_Age)

        Int_Age = new_age

    End Property

    ‘类方法

    Public Sub ToString()

        MsgBox "姓名:"+Me.Myname+" 年龄:"+Me.MyAge

        ‘Me相当于Java里面的This

    End Sub

End Class

如何调用对象

用VBScript创建的对象并不是真正的面向对象,它不能继承和实现多态,但是在QTP对象模型Utility中,提供了一个RegisterUserFunc方法可以覆写对象的方法,但这也不是真正意义上的面向对象。Class及其成员如何创建,上面已经简单介绍过,若要对其中的一些语句进一步了解,还需要去仔细阅读一些参考文档。下面我们来看看如何调用对象:


1

2

3

4

Dim MyUser      ‘定义对象变量名,注意变量名不能与类名相同,即使是大小写不同

Set MyUser = New User       ‘创建对象用New语句

MyUser.UserName = "Sirrah"   ‘给属性赋值

MyUser.ToString()    ‘调用方法

VBS基础篇 - 对象(1) - Class对象,布布扣,bubuko.com

时间: 07-08

VBS基础篇 - 对象(1) - Class对象的相关文章

VBS基础篇 - 对象(6) - Folder对象

VBS基础篇 - 对象(6) - Folder对象 描述:提供对文件所有属性的访问,从FSO对象的GetFile方法获得 使用Folder对象 要用Folder对象模型来编程必须先用FSO对象的Getfolder方法获取文件的句柄 1.使用 CreateObject 方法来创建 FileSystemObject 对象 2.使用Getfolder方法获取文件夹的句柄 3.在创建的Folder对象上使用适当的方法 4.访问对象的属性 方法:(仅常用的方法) Folder对象的方法与File对象的方法

VBS基础篇 - VBScript过程

VBS基础篇 - VBScript过程 在 VBScript 中,过程被分为两类:Sub 过程和 Function 过程. Sub过程 Sub 过程是包含在 Sub 和 End Sub 语句之间的一组 VBScript 语句.如果 Sub 过程无任何参数,则 Sub 语句必须包含空括号 ().实例代码如下: 1 2 3 4 Call GetName() '调用Sub过程 Sub GetName()     MsgBox "我是Sirrah" '输出字符串 End Sub Sub 过程可

VBS基础篇 - 循环语句(3) - For...Next

VBS基础篇 - 循环语句(3) - For...Next 指定循环次数,使用计数器重复运行语句,语法结构如下: 1 2 3 4 5 For counter = start To end [Step step]     [statements]     [Exit For]     [statements] Next 主要参数:        counter:用做循环计数器的数值变量.这个变量不能是数组元素或用户自定义类型的元素.        start:counter的初值.        

VBS基础篇 - 过程(sub 与 Function)

VBS基础篇 - 过程(sub 与 Function) 在VBscript中,有两种procedure:Sub procedure与Function procedure Sub过程:是包含在 Sub 和 End Sub 语句之间的一组 VBScript 语句.如果 Sub 过程无任何参数,则 Sub 语句必须包含空括号 (). Call GetName() '调用Sub过程 Sub GetName() MsgBox "John" '输出字符串 End Sub 'Sub 过程可以使用参数

java基础篇---JSP内置对象详解

在JSP中为了简化用户的开发,提供了九个内置对象,这些内置对象将由容器为用户进行实例化,而用户直接使用即可,而不用像在java中那样,必须通过关键字new进行实例化对象之后才可以使用. No. 内置对象 类型 描述 1 pageContext javax.servlet.jsp.PageContext JSP的页面容器 2 request javax.servlet.http.HttpServletRequest 得到用户的请求信息 3 response javax.servlet.http.H

VBS基础篇 - 变量

VBScript只有一种数据类型 —— Variant,它是根据上下文来判断是数字还是字符串.因为Variant是VBScript中唯一的数据类型,所以它也是VBScript中所有函数的返回值的数据类型. 一.申明变量 ① 显式声明:Dim.Public.Private语句进行声明 ② 隐式声明:不声明直接使用 ③ 强制声明:Option Explicit语句强制显式声明所有变量 dim name,age name="Ethon" age=27 msgbox name & ag

VBS基础篇 - 循环

经常地,当编写代码时,我们希望将一段代码执行若干次,我们可以在代码中使用循环语句来完成这项工作. 循环可分为三类:一类在条件变为 False 之前重复执行语句,一类在条件变为 True 之前重复执行语句,另一类按照指定的次数重复执行语句. For...Next:指定循环次数,使用计数器重复运行语句 Do...Loop:当条件为 true 或者直到条件为 true 时,运行循环 While…Wend:当条件为True时循环 For Each...Next:对于集合中的每项或数组中的每个元素,重复执

VBS基础篇 - class

Class 语句:声明一个类的名称,以及组成该类的变量.属性和方法的定义. Class name '参数name必选项,Class 的名称 statements '一个或多个语句,定义了 Class 的变量.属性和方法 End Class 初始化与终结化的应用 使用Class语句可以创建一个对象,可以为它编写字段.属性及方法,它只有两个对象事件——Initialize与Terminate. Class TestClass Private Sub Class_Initialize ' 设置 Ini

VBS基础篇 - 条件语句

经常地,当我们编写代码时,我们需要根据不同的判断执行不同操作,我们可以使用条件语句完成这个工作. If...Then...Else 在下面的情况中,您可以使用 If...Then...Else 语句: 在条件为 true 时,执行某段代码 选择两段代码之一来执行时 dim a '定义一个变量 a = 100 if a < 200 then a = 300 '若i<200,则对i重新赋值 msgbox a '输出的值为300 要运行多行代码,必须使用多行(或块)语法,多行(或块)语法包含 End