第一种:imports pubBizlogicpublic class testA
   
   '将类实例化定义在这里,sub外   
   private blzClass as new pubBizlogic.BlzClass
   
   private sub a()
      dim p1 as string = blzClass.bbb()
   end sub   private sub b()
      dim p2 as string = blzClass.bbb()
   end sub
   
   ...还有很多
   
end class第二种:imports pubBizlogicpublic class testA
   
   
   private sub a()
      '将类实例化定义在这里,sub内  
      private blzClass as new pubBizlogic.BlzClass
      dim p1 as string = blzClass.bbb()
   end sub   private sub b()
      '将类实例化定义在这里,sub内  
      private blzClass as new pubBizlogic.BlzClass
      dim p2 as string = blzClass.bbb()
   end sub
   
   ...还有很多
   
end class问题:这2种写法,对程序执行没有影响。
      但,哪种更好?为什么??

解决方案 »

  1.   

    第一种方法在testA 实例化时同时实例化BlzClass,相对第二种性能有影响;第二种方法虽然是按需实例化,但多次重复使用,未达到代码重用。可以将第一种方法中的blzClass 字段不实例化,设置null。然后在a()方法和b()方法分别再实例化(如果BlzClass类为有状态的类的话)或者判断是否为null,否则再实例化(如果BlzClass无状态的话),这样可达到性能和重用的双淫接分。