AS3 -- 类成员以及函数的使用

与大家分享一下AS3中 ,另一种访问类成员以及函数的方式


1)本人语言表达能力欠缺,博客内容以代码为主

2)欢迎各位大虾拍砖


上代码:

package
{	
	public class TestCls
	{
		private var a:String;
		private var b:String;
		private var c:String;
		
		public function TestCls()
		{
			a = "this is a";
			b = "this is b";
			c = "this is c";
		}
		
		public function func1():void
		{
			trace("func1");
		}
		
		public function func2():void
		{
			trace("func2")
		}
		
		public function func3():void
		{
			trace("func3")
		}
		
		/**
		 * 根据变量名取指定的变量
		 **/
		public function getVars(varName:String):*
		{
			return this[varName];
		}
		
		/***
		 * 根据函数名,取指定的函数
		 **/
		public function getFunByName(funName:String):Function
		{
			return this[funName] as Function;
		}
		
		/***
		 * 根据函数名,运行指定函数
		 **/
		public function executeFunByName(funName:String):void
		{
			this[funName]();
		}
		
		public function testMain():void 
		{
			//--执行 函数名为 func1 的函数
			this.executeFunByName("func1");
			//--取名为 func2 的函数并执行
			var tmpFunc2:Function = this.getFunByName("func2");
			tmpFunc2.apply();
			//--取名为a的变量
			var tmp:* = this.getVars("a");
			trace (tmp);
		}
	}
}

以上是代码

下面,新建一TestCls实例,并且执行 testMain()函数

***********

var t:TestCls = new TestCls();
t.testMain();

***********

这是运行的结果:

-----------------------------------------------------

func1
func2
this is a

----------------------------------------------------

ps: 

//--函数还可以这样用哦
var tmpFunc3:Function = this.func3;
tmpFunc3();


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值