VBS基础篇 - class
Class 语句:声明一个类的名称,以及组成该类的变量、属性和方法的定义。
Class name '参数name必选项,Class 的名称
statements '一个或多个语句,定义了 Class 的变量、属性和方法
End Class
初始化与终结化的应用
使用Class语句可以创建一个对象,可以为它编写字段、属性及方法,它只有两个对象事件——Initialize与Terminate。
Class TestClass
Private Sub Class_Initialize ' 设置 Initialize 事件,相当于构造函数
MsgBox("TestClass started")
End Sub
Private Sub Class_Terminate ' 设置 Terminate 事件,相当于析构函数
MsgBox("TestClass terminated")
End Sub
End Class Set X = New TestClass ' 创建一个 TestClass 实例
Set X = Nothing ' 删除实例 a.类的事件方法格式是固定的,事件名是固定的,事件只能是Sub不能是Function,事件无参数;
b.类实例通过New来创建,通过Nothing来销毁;
c.记住所有的类实例都是对象,创建与销毁时记得用Set语句,没有Set是错的。
类可以有公有(Public)和私有(Private)字段:
(1)公有的字段可以外部访问,私有的不能:
(2)可以定义数组字段,且此数组字段可以是动态数组
类可以有公有或者私有的属性:
(1)公有的属性可以外部调用,私有的属性不能
(2)用Property Get定义读属性,用Property Set和Property Let来定义写属性
(3)当定义写属性时,如果此属性封装的是对象字段,则此写属性必须是Property Set
(4)属性不必是成对出现,这样就可以造成只读或只写属性,当然Private任意一方也可以造成这种情况
Set MyUser = New User
MyUser.MyAge = "" '设置对象的MyAge属性值
MyUser.Myname = "john" '设置对象的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 "姓名:"+Myname+" 年龄:"+MyAge
End Sub End Class
VBS基础篇 - class的更多相关文章
- VBS基础篇 - 过程(sub 与 Function)
VBS基础篇 - 过程(sub 与 Function) 在VBscript中,有两种procedure:Sub procedure与Function procedure Sub过程:是包含在 Sub ...
- VBS基础篇 - 循环语句(3) - For...Next
VBS基础篇 - 循环语句(3) - For...Next 指定循环次数,使用计数器重复运行语句,语法结构如下: 1 2 3 4 5 For counter = start To end [Ste ...
- VBS基础篇 - 循环语句(4) - For Each...Next
VBS基础篇 - 循环语句(4) - For Each...Next For Each...Next 循环与 For...Next 循环类似.For Each...Next 不是将语句运行指定的次 ...
- VBS基础篇 - VBScript过程
VBS基础篇 - VBScript过程 在 VBScript 中,过程被分为两类:Sub 过程和 Function 过程. Sub过程 Sub 过程是包含在 Sub 和 End Sub 语句之间的 ...
- VBS基础篇 - 对象(1) - Class对象
VBS基础篇 - 对象(1) - Class对象 相信对JAVA有一定了解的朋友一定对类这个名词不陌生,但是大家可能没有想过在VBS中使用Class类吧,其实Class类在自动化测试中是相当常用的 ...
- VBS基础篇 - 对象(3) - FileSystemObject对象
VBS基础篇 - 对象(3) - FileSystemObject对象 文件系统是所有操作系统最重要的部分之一,脚本经常会需要对文件及文件夹进行访问和管理,在Vbs中对桌面和文件系统进行访问的顶级 ...
- VBS基础篇 - 对象(5) - File对象
VBS基础篇 - 对象(5) - File对象 描述:提供对文件所有属性的访问,从FSO对象的GetFile方法获得. 使用File对象 要用File对象模型来编程必须先用FileS ...
- VBS基础篇 - 对象(7) - TextStream对象
VBS基础篇 - 对象(7) - TextStream对象 TextStream对象是用于访问文本文件的对象,它是FileSystemObject一个独立的附属对象,但在使用TextStream对 ...
- VBS基础篇 - 对象(6) - Folder对象
VBS基础篇 - 对象(6) - Folder对象 描述:提供对文件所有属性的访问,从FSO对象的GetFile方法获得 使用Folder对象 要用Folder对象模型来编程必须先用FSO对象的G ...
- VBS基础篇 - 杂项 - Sendkeys
VBS基础篇 - 杂项 - Sendkeys 模拟键盘操作,将一个或多个按键指令发送到指定Windows窗口来控制应用程序运行 其使用格式为:object.SendKeys(string) obj ...
随机推荐
- Html5新标签及用法
HTML 5 是一个新的网络标准,目标在于取代现有的 HTML 4.01, XHTML 1.0 and DOM Level 2 HTML 标准.它希望能够减少浏览器对于需要插件的丰富性网络应用服务( ...
- 每天一道LeetCode--374. Guess Number Higher or Lower
We are playing the Guess Game. The game is as follows: I pick a number from 1 to n. You have to gues ...
- DDL、DML和DCL的理解
一.DDL 1.DDL的概述 DDL(Data Definition Language 数据定义语言)用于操作对象和对象的属性,这种对象包括数据库本身,以及数据库对象,像:表.视图等等, ...
- asp.net全局记住值
每个网页都要记住名字和密码! 在Page_Load中写如下代码: Session[“起个名字”]=要赋值的; 在显示的时候写 Response.write(Session[“当时起的名字”.ToStr ...
- oracle数据库执行脚本常用命令总结
1. 执行一个SQL脚本文件 代码如下 复制代码 sqlplus user/pass@servicename<file_name.sql或SQL>start file_names或SQL& ...
- oledb 操作 excel
oledb excel http://wenku.baidu.com/search?word=oledb%20excel&ie=utf-8&lm=0&od=0 [Asp.net ...
- Cllimbing Stairs [LeetCode 70]
1- 问题描述 You are climbing a stair case. It takes n steps to reach to the top. Each time you can eithe ...
- 从源码看java中Integer的缓存问题
在开始详细的说明问题之前,我们先看一段代码 public static void compare1(){ Integer i1 = 127, i2 = 127, i3 = 128, i4 = 128; ...
- python+selenium环境配置(windows7环境)
下载python[python开发环境] http://python.org/getit/ 下载setuptools[python的基础包工具] http://pypi.python.org/pypi ...
- .NET中的标识符、关键字 以及 .NET中的命名规范
1.关键字 C#定义了一些关键字(public/static/void/class/int/string),这些关键字是构成C#基本语法用的. VS中蓝色字的才是关键字. Main.String.Co ...