Flex中的反射和注意事项。
?
Flex中的反射和java中的反射类似,就是动态获取的信息和动态调用对象的方法被称为反射。 语法有一些不同,java中的反射大家都接触的比较多在此不做描述,重点讲Flex中的反射。 1、语法: a、根据类名取类 var classReference:Class = Class(getDefinitionByName(”gds.jxbztj.classroom.ClassRoomTitleWindow”)); //一但你得到了类的引用后,就可以这样 var instance:Object = new classReference( ); instance对象就是根据类名获得的类的对象。 b、取类名: 传进一个object,返回类的全名 var classRoomTitleWindow:ClassRoomTitleWindow= new ClassRoomTitleWindow( ); var className:String = getQualifiedClassName(classRoomTitleWindow); trace(className); // 打印出来gds.jxbztj.classroom.ClassRoomTitleWindow c、取父类的类名:传进一个object,返回父类的类名 var classRoomTitleWindow:ClassRoomTitleWindow= new ClassRoomTitleWindow( ); var className:String = getQualifiedSuperclassName(classRoomTitleWindow); 2、注意事项 如果在系统中没有声明或使用过的类是不能反射的,因为Flex中在编译成swf时为了减少swf的大小会将所有声明或使用的类编译进去。所以在用反射时一定要确保系统中声明过,否则在使用时就必须声明他。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |