当前位置: 移动技术网 > IT编程>开发语言>.net > 在VBScript中使用类(二)

在VBScript中使用类(二)

2018年10月19日  | 移动技术网IT编程  | 我要评论

姬鹏飞之子姬红军,赛尔号杰丹,陆军野战医院

创建对象



在vbscript中创建对象类型(类)时,你首先要知道,这真的很容易!我在一个下午自学,只是了microsof vb script 的参考书,但必须承认,这书不是最容易阅读的文档。

初学者需要安装vbscript 5.0引擎,可以在microsofts scripting site下载。

我们来看代码。类的定义与函数和子过程非常类似。起始行为class ,结尾是end class,所有的对象定义写在中间部门。现在我们可以用所学的来建立第一个类,不实现任何功能的类。

class 4guystestobject

end class



这看上去不是那么回事,但当你写入下面的代码后,你将创建一个对象的实例:

dim objtestobject

set objtestobject = new 4guystestobject

set objtestobject = nothing



显然,我们现在还不能用对象做任何事,现在我将解释如何在对象中定义属性和方法。

使用对象可以做的最基础的,是建立一组数据。例如,假如要将时间、日期及视频程序标题建立在一起,你可以创建一个包含属性“starttime”, “programdate”和“programtitle”的对象。代码如下:

class tvprogram

public starttime

public programdate

public programtitle

end class



dim objtvshow

set objtvshow = new tvprogram



objtvshow.starttime = cdate("17:30")

objtvshow.programdate = dateserial(1999,9,17)

objtvshow.programtitle = "the jerry springer show"



response.write objtvshow.programtitle & " is on at " & _

objtvshow.starttime & " on " & objtvshow.programdate



代码工作的方式是,我们定义starttime,programdate和programtitle为类tvprogram的属性。这样,这些属性就像其他变量一样来处理,没有设置值则不会执行代码。属性名字前的public字段有其真实含义,而且非常重要。如果你不特指一个方法或属性为public或private,默认值为public,但最好养成定义任何值的良好书写习惯(也方便你之后自己的阅读)。

上面程序的结果大致如下(决定于你的本地服务器配置):

the jerry springer show is on at 5:30pm on 17/09/99.



我在英国,所以日期现实如上。不论你跑什么工程,它的效果都不错,但只有你开始使用其他对象的功能,为你可能需要的所有信息和功能,创建一个完美的接口,以支持你所建对象包围的实体,你才会体会到对象的真正实力。

现在,如果你不喜欢上面例子显示日期的方法,而希望以同一种格式现实日期,也没有不要在引用每个programdate属性时加formatdatetime(),你只需要将此类代码植入属性本身。

这样需要用另一种方法定义属性。同样,我们将使用programdate为外部可见属性,但因为programdate属性将成为一个函数而不是静态值,我们将实际日期保存在另一个属性中internal_programdate。

class tvprogram
public starttime

public internal_programdate

public property get programdate
programdate = day(internal_programdate) & _
" " & monthname(month(internal_programdate)) & _
" " & year(internal_programdate)
end property

public programtitle
end class

dim objtvshow
set objtvshow = new tvprogram

objtvshow.starttime = cdate("17:30")
objtvshow.internal_programdate = dateserial(1999,9,17)
objtvshow.programtitle = "the jerry springer show"


response.write objtvshow.programtitle & " is on at " & _
objtvshow.starttime & " on " & objtvshow.programdate & "."


程序的结果如下:

the jerry springer show is on at 5:30pm on 17 september 1999.

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网