[发明专利]一种haxe的反射机制的改进方法和系统在审

专利信息
申请号: 201910720732.0 申请日: 2019-08-05
公开(公告)号: CN110413266A 公开(公告)日: 2019-11-05
发明(设计)人: 陈江豪;刘玉丹 申请(专利权)人: 广东三维家信息科技有限公司
主分类号: G06F8/20 分类号: G06F8/20
代理公司: 北京超凡宏宇专利代理事务所(特殊普通合伙) 11463 代理人: 徐丽
地址: 510000 广东省广州市天河区天河软件园*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 成员属性 反射机制 访问接口 目标集合 访问目标 父类 反射 改进 集合 访问 缓解 申请
【说明书】:

发明提供了一种haxe的反射机制的改进方法和系统,其中方法包括:获取待访问haxe生成类的成员属性和成员方法;在haxe的父类Object下面定义成员属性和成员方法的访问接口;将成员属性和成员方法注册到目标集合中;目标集合为与待访问haxe生成类对应的Class类对象;通过反射类利用访问接口访问目标集合。本申请缓解了现有技术中的haxe的反射机制,存在着的效率低下的技术问题。

技术领域

本发明涉及软件开发技术领域,尤其是涉及一种haxe的反射机制的改进方法和系统。

背景技术

Haxe的Reflect类和Type类均使用了反射机制来访问属性。其中Reflect类的接口hasField(用于判断属性是否存在)、field(用于获取某个属性)、getProperty(用于获取某个静态属性)、fields(用于获取所有实例属性)和Type类的getInstanceFields(用于通过类定义获取所有实例属性)、getClassFields(用于通过类定义获取类的静态属性),这些接口都是通过反射机制实现。

对于现有技术中haxe的反射机制,在庞大的工程项目下,存在着效率低下的技术问题,同时,现有技术中的haxe反射机制也会导致这些庞大的工程项目包体大小的急剧增大的问题。具体表现在,每个类定义的__Field/__GetStatic/__GetFields等接口、XXX_sMemberFields数组、XXX_sStaticFields数组,以及注册一个对应的Class类定义对象来存储这些反射关系,在使用反射机制时需要不断溯源,而且__GetFields是新创建一个数组来临时存储这些属性名,这又会占用一部分内存资源和垃圾回收器接口资源。而且hasField局限性在于无法判断实例的属性是否存在,通过实例想知道是否存在某属性只能先把所有属性获取出来,再通过索引字符串数组判断。综上所述,现有技术中的haxe的反射机制,存在着效率低下的技术问题。

发明内容

有鉴于此,本发明的目的在于提供一种haxe的反射机制的改进方法和系统,以缓解了现有技术中的haxe的反射机制,存在的效率低下的技术问题。

第一方面,本发明实施例提供了一种haxe的反射机制的改进方法,包括:获取待访问haxe生成类的成员属性和成员方法;在haxe的父类Object下面定义所述成员属性和所述成员方法的访问接口;将所述成员属性和所述成员方法注册到目标集合中;所述目标集合为与所述待访问haxe生成类对应的Class类对象;通过反射类利用所述访问接口访问所述目标集合。

进一步地,在haxe的父类Object下面定义所述成员属性和所述成员方法的访问接口之后,所述方法还包括:在haxe的父类Object下面定义所述待访问haxe生成类的垃圾回收器接口。

进一步地,所述垃圾回收器接口包括:Mark接口和Visit接口。

进一步地,所述成员属性包括:所述待访问haxe生成类的普通属性和所述待访问haxe生成类的静态属性;所述成员方法包括:所述待访问haxe生成类的普通方法和所述待访问haxe生成类的静态方法。

进一步地,所述目标集合包括第一容器、第二容器、第三容器和第四容器,其中,所述第一容器,用于存储所述普通属性;所述第二容器,用于存储所述静态属性;所述第三容器,用于存储所述普通方法;所述第四容器,用于存储所述静态方法。

第二方面,本发明实施例还提供了一种haxe的反射机制的改进系统,包括:获取模块,定义模块,注册模块和访问模块,其中所述获取模块,用于获取待访问haxe生成类的成员属性和成员方法;所述定义模块,用于在haxe的父类Object下面定义所述成员属性和所述成员方法的访问接口;所述注册模块,用于将所述成员属性和所述成员方法注册到目标集合中;所述目标集合为与所述待访问haxe生成类对应的Class类对象;所述访问模块,用于通过反射类利用所述访问接口访问所述目标集合。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东三维家信息科技有限公司,未经广东三维家信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201910720732.0/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top