局部变量类成员化的设计思路:减少变量频繁构造,析构的时间成本和内存成本

>>前提假设

Class A{

       public static function funcA():void

       {

              var m:int ;

              var n:int ;

           

              ......

        }

}

 

假设上述函数【funcA】用于为Grid中每个项目文字进行截平处理(文字超过显示区域,则用省略号表示)。

 

>>问题

如果Grid每行有20个项目,Grid高度能够显示30行,则至少有20*30=600个项目单元。

显示Grid一页的内容,funcA函数至少执行600遍。

如果Grid拖动滚动条改变Grid显示的数据,则funcA便不停地执行。

funcA中的变量被多次(次数以千为单位)创建。

这些局部变量在没有被垃圾回收前,会占用内存。

 

>>设计思路

将变量作为类成员来定义,可以解决上述问题。

Class A{

       private static var _m:int ;

       private static var _n:int ;

       public static function funcA():void

       {

            

              ......

        }

}

 

这些变量虽然被定义为成员变量(共有),实际上是被局部使用的,

为了和那些【真正意义】的成员变量区分开来,可以在变量命名上作出规定,比如以前缀“temp”开头。

且把这些变量和使用它们的函数放在一起定义。

Class A{

       private static var _tempM:int ;

       private static var _tempN:int ;

       public static function funcA():void

       {

            

              ......

        }

}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值