在VB中关于Property语句的详细说明,请问都有什么呢?

求教,因为之前从来未接触属性这一概念
我想知道Property语句的格式是否是固定的:
private property 名字() as 数据类型
get
return 返回某个值
end get
set(参数) ‘请问这里是不是接收get块中返回的值?
语句……
end set
end property

问题1:请问proterty语句的格式固定就是这样的,必须有get和set两个语句块
问题2:请问get块中返回的值是不是返回给set块中的参数来接收
问题3:这样做感觉是大废周章,我用一个函数就可以轻松搞定,为什么还需要Property?
问题4:具了解这属性是类的成员属性,类我是知道一些的,具我所知的是类也有成员函数,那么这个属性与函数到底有什么区别?
如果有详细的官方资料提供那是最好了,望知道的大大不吝赐教。

慕后森
浏览 276回答 2
2回答

翻过高山走不出你

1、如果只有get,那么这个属性就是只读的(就是说只能读,无法给它赋值);如果只有set,那么这个属性就是只写的(只能赋值,无法读取,这种情况比较少见);有get也有set,则该属性可读可写。2、不是的,get是获取属性的值,而set是给属性赋值。3、函数只能读取值,但你没法给函数赋值。4、区别见第3点。其实给类设置属性,就使类具备了类似控件的一些特性,比如我们可以从Label1.Caption获取Label1的文字内容,也可以通过给Label1.Caption赋值来改变Label1的文字内容;同样,如果给类abc设置一个可读可写的属性x,那么我们可以通过abc.x来获取这个属性的值,也可以通过给abc.x直接赋值来改变这个属性的值。

SMILET

格式是固定的,但是并不是一定需要两个。对于属性有两种操作,获取(get)以及设置(set),如果只有GET,这个属性是只读的,反之只有SET,则是只写的(这个不常见)。这点VB确实有点啰嗦,但相对于直接赋值,属性过程增加了检查的功能,即你可以增加代码检查该值的合法性。函数(或者叫类的方法)也可以完成相同的功能,看你自己的习惯。
打开App,查看更多内容
随时随地看视频慕课网APP