flash as3.0中get与set的用法与案例代码

所属分类: 媒体动画 / Flash教程 阅读数: 60
收藏 0 赞 0 分享
我们知道,我们在编写类的时候应该尽量将它的属性和方法都隐藏起来,但当我们要调用某一个属性的时候,我们就不得不将它暴露出来,这是唯一的一种解决方法吗?答案是否定的,我们现在要求这样,有一个属性,我们想从外部调用它,也能够从外部访问它,但是不让它暴露到外部,这时我们如何去做呢?这里就要用到我们的get关键字。下面我们就来详细讲解一下get及set的使用方法。
先来看一段脚本,

复制代码
代码如下:

package {
public class Setget {
private var Str:String = "欢迎";
public function get Data():String {
return Str;
}
public function set Data(ns:String):void {
Str= ns;
}
}
}

这段脚本并不长,但却很好的体现了get的使用方法,我们来看一下。首先我们定义了一个名称为huoqu的类,这个类中有一个私有属性ming,这个属性只能被当前类所访问。也就是说,我们无法在外部调用或访问这个属性。这时我们就要使用get来让这个属性能够被外部访问。那么我们先来看第一个get函数,这个函数有一个返回值,该返回值的类型是字符串。这个返回的数据就是一个我们隐藏的变量,通过这样的手法我们就达到了封装的目的。当我们调用这个变量的时候我们就可以直接调用ni这个函数,通过这个函数去操作变量。我们再来看set这个函数的使用方法。set顾名思义是设置的意思。我们如果没有写set函数,那么该属性只是一个只读属性。如果我们设置了这个set函数,那么该属性就可以读也可以设置。我们来看上面的脚本,这个函数接受了一个参数,该参数就是我们设置属性时要传递的值。请大家注意,set函数没有返回值,如果你设置了返回值,那么将会倒是编译错误。这就是类中声明定义的方法。
下面我们再来看看如何使用两个函数。我们先看脚本。

复制代码
代码如下:

package {
import flash.display.MovieClip
public class Setgets extends MovieClip{
public function Setgets():void
{
init();
}
private function init():void
{
var _set:Setget = new Setget ();
trace(_set.Data)
_set.Data="光临";
trace(_set.Data);
}
}
}

首先,要定义一个对象,该对象的类型是我们定义的类。然后我们调用ni这个方法,虽然调用这个方法,实际上是读取一个属性的值。第三句我们设置了改属性的值,注意,此时调用的实际上就是set函数,我们再输出这个属性值,发现输出的内容发生了改变。
更多精彩内容其他人还在看

Flash cs6怎么创建XML文档?

Flash cs6怎么创建XML文档?XML是扩展的标记语言,想要在flash中使用XML,该怎么使用呢?下面我摩恩就来看看在Flash中表示XML文档的技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

flash怎么绘制太阳花简笔画?

flash怎么绘制太阳花简笔画?flash中想要画一朵太阳花,该怎么绘制简笔画效果的太阳花呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

Flash CS6带\b符号正则表达式怎么匹配?

Flash CS6带\b符号正则表达式怎么匹配?Flash CS6中正则表达式需要匹配,那么带/b符号的正则表达式该怎么匹配呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

flash怎么画小女孩的头像?

flash怎么画小女孩的头像?flash中想要画一个小女孩头像,该怎么画小女孩头像呢?下面我们就来看看详细的教程,很简单,需要的朋友可以参考下
收藏 0 赞 0 分享

flash怎么快速画一排松树?

flash怎么快速画一排松树?flash中想要画松树,该怎么快速画一排松树呢?下面我们就来看看flash绘制松树的教程,很简单,需要的朋友可以参考下
收藏 0 赞 0 分享

flash怎么将匹配字符串保存在同一数组?

flash怎么将匹配字符串保存在同一数组?文章中有很多想用的字符串,想要将相同的字符串放到同一数组,该怎么实现恩?下面我们 就来看看纤细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

flash正则表达式转义字符怎么使用?

flash正则表达式转义字符怎么使用?flash cs6中正则表达式中出现了^和$字符,需要使用转义符,该怎么使用转义字符呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

Flash怎么使用exec搜索匹配的字符串?

Flash怎么使用exec搜索匹配的字符串?Flash cs6中想要使用用exec方法搜索匹配的字符串,该怎么使用exec呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

flash2015怎么绘制彩色铅笔?

flash2015怎么绘制彩色铅笔?flash cc 2015中想要画一只彩色铅笔,该怎么画彩色铅笔呢?下面我们就来看看flash画彩色铅笔的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

Flash怎么输出字符串中的反斜杠?

Flash怎么输出字符串中的反斜杠?flash cs6中的字符串输出的时候,发现反斜杠/没有输出出来,该怎么解决呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多