ASP 类专题(2)
class CFish
sub Swim()
end sub
end class
class CBird
sub Fly()
end sub
end class
class CAnimal
dim fish
dim bird
private sub class_initialize()
set fish = new CFish
set bird = new CBird
end sub
private sub class_terminate()
set fish = nothing
set bird = nothing
end sub
end class
dim animal
set animal = new CAnimal
call animal.fish.Swim() '鱼游
call animal.bird.Fly() '鸟飞
set animal = nothing
ASP 类属性
class CFoo
private pvt
'属性写
public property let propName(v)
pvt = v
end property
'属性读
public property get propName()
PropName = pvt
end property
end class
dim obj
set obj = new CFoo
obj.propName = "属性值"
response.Write(obj.propName) '显示“属性值”
set obj = nothing
可以看出属性值相当于是在私有成员变量与外界之间架了一座桥梁,使双方可以互相通信。
有人就会问属性跟公有成员变量一样,它的存在又有什么独立的意义呢?
1、可以在赋值的同时执行其它功能
如下代码,相当于同时为两个成员变量赋值
public property let propName(v)
pvt = v
另一个私有成员变量名 = "pvt 的值:" & v
end property
2、可以确定赋值范围
假如上例中的属性写改为如下:
public property let propName(v)
if Len(v) <= 5 then
pvt = v
end if
end property
内容版权声明:除非注明,否则皆为本站原创文章。