AS3 中 getter 和 setter 的用法
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/10/07 22:21:17
AS3 中 getter 和 setter 的用法
说具体点,别说定义了 ~ 定义我知道. 就是不知道怎么用 .
说具体点,别说定义了 ~ 定义我知道. 就是不知道怎么用 .
package {
public class huoqu {
private var ming:String = "中国";
public function get ni():String {
return ming;
}
public function set ni(ns:String):void {
ming = ns;
}
}
}
这段脚本并不长,但却很好的体现了get的使用方法,我们来看一下.首先我们定义了一个名称
为huoqu的类,这个类中有一个私有属性ming,这个属性只能被当前类所访问.也就是说,我们无法
在外部调用或访问这个属性.这时我们就要使用get来让这个属性能够被外部访问.那么我们先来看
第一个get函数,这个函数有一个返回值,该返回值的类型是字符串.这个返回的数据就是一个我们
隐藏的变量,通过这样的手法我们就达到了封装的目的.当我们调用这个变量的时候我们就可以直接
调用ni这个函数,通过这个函数去操作变量.我们再来看set这个函数的使用方法.set顾名思义是
设置的意思.我们如果没有写set函数,那么该属性只是一个只读属性.如果我们设置了这个set函数,
那么该属性就可以读也可以设置.我们来看上面的脚本,这个函数接受了一个参数,该参数就是我们
设置属性时要传递的值.请大家注意,set函数没有返回值,如果你设置了返回值,那么将会倒是编译
错误.这就是类中声明定义的方法.
下面我们再来看看如何使用两个函数.我们先看脚本.
var foo:huoqu = new huoqu();
trace(foo.ni)
foo.ni="我的天";
trace(foo.ni);
首先,要定义一个对象,该对象的类型是我们定义的类.然后我们调用ni这个方法,虽然调用这个
方法,实际上是读取一个属性的值.第三句我们设置了改属性的值,注意,此时调用的实际上就是set
函数,我们再输出这个属性值,发现输出的内容发生了改变.
以上就是get函数和set函数的使用方法,其实非常简单,大家只要自己尝试几次就能够熟练掌握
其中的技巧.
再问: 是不是说 使用 set 和 get 定义的函数, 都可以当做,当前类的属性来使用? 因为 我尝试用 ni("我的天"); 来定义 ,老是提示说 未定义函数~~. 不知道我的理解对不对?
再答: 不知道你说的当前类是个什么概念, ni("我的天"),是不可能通过的, 简单理解就,ni这个方法是huoqu类的一个属性,可通过set进行更改 至此,想必懂了?
public class huoqu {
private var ming:String = "中国";
public function get ni():String {
return ming;
}
public function set ni(ns:String):void {
ming = ns;
}
}
}
这段脚本并不长,但却很好的体现了get的使用方法,我们来看一下.首先我们定义了一个名称
为huoqu的类,这个类中有一个私有属性ming,这个属性只能被当前类所访问.也就是说,我们无法
在外部调用或访问这个属性.这时我们就要使用get来让这个属性能够被外部访问.那么我们先来看
第一个get函数,这个函数有一个返回值,该返回值的类型是字符串.这个返回的数据就是一个我们
隐藏的变量,通过这样的手法我们就达到了封装的目的.当我们调用这个变量的时候我们就可以直接
调用ni这个函数,通过这个函数去操作变量.我们再来看set这个函数的使用方法.set顾名思义是
设置的意思.我们如果没有写set函数,那么该属性只是一个只读属性.如果我们设置了这个set函数,
那么该属性就可以读也可以设置.我们来看上面的脚本,这个函数接受了一个参数,该参数就是我们
设置属性时要传递的值.请大家注意,set函数没有返回值,如果你设置了返回值,那么将会倒是编译
错误.这就是类中声明定义的方法.
下面我们再来看看如何使用两个函数.我们先看脚本.
var foo:huoqu = new huoqu();
trace(foo.ni)
foo.ni="我的天";
trace(foo.ni);
首先,要定义一个对象,该对象的类型是我们定义的类.然后我们调用ni这个方法,虽然调用这个
方法,实际上是读取一个属性的值.第三句我们设置了改属性的值,注意,此时调用的实际上就是set
函数,我们再输出这个属性值,发现输出的内容发生了改变.
以上就是get函数和set函数的使用方法,其实非常简单,大家只要自己尝试几次就能够熟练掌握
其中的技巧.
再问: 是不是说 使用 set 和 get 定义的函数, 都可以当做,当前类的属性来使用? 因为 我尝试用 ni("我的天"); 来定义 ,老是提示说 未定义函数~~. 不知道我的理解对不对?
再答: 不知道你说的当前类是个什么概念, ni("我的天"),是不可能通过的, 简单理解就,ni这个方法是huoqu类的一个属性,可通过set进行更改 至此,想必懂了?
order getter和 order 关于business的
setter是一个顺序颠倒的词语请你排序
求一个 as3计算器要是类的形式 可以在flash builder中运行
as3中能表示一个比number类型最大值还大的数吗?
as3 new Tween()和var newTween:Tween=new Tween()的区别
as3 stage 对应mxml的什么?
as3 判断mc运动的方向
二次方程a x平方+bx+c=0中,s1是两跟的和,s2是两根的平方和,s3是两跟的立方和,则cs1+bs2+as3=?
AS3.0中:定义的对象名只是真正对象的一个引用.这句话的含义是什么?
Flash中AS2.0的代码能不能麻烦帮我换成AS3.0的 on (release) { gotoAndPlay("开场
Flash CS3 (AS3)中Stage与stage有什么区别?
英语中do的用法,和does的用法