zoukankan      html  css  js  c++  java
  • AS3动态获得类名及类的方法

    1.获得某个实例对象的类名:getQualifiedClassName (实例名字符串表达式);

    1 stage.addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandle);
    2 function mouseOverHandle(e:Event):void {
    3     trace("over");
    4     //   返回instance**之类的        
    5     trace(e.target.name);
    6     //返回元件名   
    7     trace(getQualifiedClassName(e.target));
    8 }

    2.获得某个实例对象的类:constructor

    1 dynamic class A {}
    2 trace(A.prototype.constructor);      // [class A]
    3 trace(A.prototype.constructor == A); // true
    4 var myA:A = new A();
    5 trace(myA.constructor == A);         // true

    3.根据类名获得类: getDefinitionByName(类名);

     1 package {
     2     import flash.display.DisplayObject;
     3     import flash.display.Sprite;
     4     import flash.utils.getDefinitionByName;
     5 
     6     public class GetDefinitionByNameExample extends Sprite {
     7         private var bgColor:uint = 0xFFCC00;
     8         private var size:uint = 80;
     9 
    10         public function GetDefinitionByNameExample() {
    11             var ClassReference:Class = getDefinitionByName("flash.display.Sprite") as Class;
    12             var instance:Object = new ClassReference();
    13             instance.graphics.beginFill(bgColor);
    14             instance.graphics.drawRect(00, size, size);
    15             instance.graphics.endFill();
    16             addChild(DisplayObject(instance));
    17         }
    18     }
    19 }

    4.用得到的类实例化对象:一般中间要用一个无类型变量传递类,进行实例化;如:

    1 var i=0
    2 var c:*=getDefinitionByName(getQualifiedClassName ("MyClass"+i)); 
    3 var myClass:*=new c();
    4 
  • 相关阅读:
    javascript 基础知识-1
    AngularJs-指令和指令之间的交互(动感超人)
    AngularJs-指令和控制器交互
    奇点大学公开课之尼葛洛庞帝讲述物联网和智能设备
    AngularJs-数据绑定
    AngularJs-指令1
    AngularJs-MVC之路由、模块以及依赖注入
    AngularJS-MVC
    利用canvas制作图片(可缩放和平移)+相框+文字
    Django rest framework 认证组件源码分析
  • 原文地址:https://www.cnblogs.com/ddw1997/p/1536851.html
Copyright © 2011-2022 走看看