[AS3]在反射中使用静态方法

本文介绍如何在AS3中利用反射获取并调用类的静态方法,通过具体示例展示了这一过程,对于理解AS3的反射机制及其实现细节具有一定的参考价值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

个人比较喜欢用xml配置一些flash中使用的信息,尤其是利用反射(java感染的习惯的),主要是因为比较多是做架构,讲究的通用性
在AS3中,类的实例是不能使用该类中的静态方法的。只能通过类名来调用静态方法。所以利用反射使用一个类的静态方法时候,就可以少一步啦,直接反射出来的class,再调用静态方法就可以了。
在程序中直接输出类名,得出的是class对象。下面还是看看代码吧

程序代码 程序代码

import flash.display.Sprite;
import org.sujun.StaticClass;

public class Main extends Sprite 
    {
        private var str:StaticClass;
        
        
        public function Main() 
        {
            var st:Class = getDefinitionByName("org.sujun.StaticClass") as Class;
            trace("==" + st);
            trace(st.name);
            st["staticTest"]();

        }
}



下面是静态属性的方法和类

程序代码 程序代码

/**
 * @(#)StaticClass.as
 * 
 * @author soda.C  E-mail:sujun10@21cn.com
 * @version 1.0
 * <br>Copyright (C), 2007 soda.C
 * <br>This program is protected by copyright laws.
 * <br>Program Name:Soda.API
 * <br>Date:2008-4-24
 */
package org.sujun
{
    public class StaticClass 
    {
        public static var name:String = "soda";
        
        public static function staticTest():void
        {
            trace("staticTest");
        }
        
        public function test():void
        {
            trace("test");
        }
    }
}


你复制那里代码就可以,很简单,呵呵
下载文件代码下载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值