首页 > 网络安全 > 媒体动画

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

admin 媒体动画 2022-02-20 22:23:55 3D设计   as3.0   get   set"
我们知道,我们在编写类的时候应该尽量将它的属性和方法都隐藏起来,但当我们要调用某一个属性的时候,我们就不得不将它暴露出来,这是唯一的一种解决方法吗?答案是否定的,我们现在要求这样,有一个属性,我们想从外部调用它,也能够从外部访问它,但是不让它暴露到外部,这时我们如何去做呢?这里就要用到我们的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函数,我们再输出这个属性值,发现输出的内容发生了改变。
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。
本文地址:/3Dsheji/169816.html

留言与评论(共有 0 条评论)
   
验证码:

潘少俊衡

| 桂ICP备2023010378号-4

Powered By EmpireCMS

爱享小站

中德益农

谷姐神农

环亚肥料

使用手机软件扫描微信二维码

关注我们可获取更多热点资讯

感谢潘少俊衡友情技术支持