我有一个多次引用UiApplication.getUiApplication()的类,将其分配给如下所示的实例会有性能上的好处:
private UiApplication _uiApplication;
public MyClass()
{
_uiApplication = UiApplication.getUiApplication();
}
还是每次都完全相同时调用UiApplication.getUiApplication()?
最佳答案
UiApplication.getUiApplication()
从执行调用代码的地方检索UiApplication实例。因此,如果您从应用程序中调用它,则它将与使用变量相同。但是,如果您从在另一个应用程序内部执行的代码(例如PhoneListener
回调中的代码,某些其他系统挂钩或备用入口点)调用它,则它将返回对该外部应用程序的引用,如果返回,则返回null没有GUI应用程序。 (请注意,如何在BlackBerry项目中编写在其他进程中执行的代码。因此,请勿将应用程序上下文(正在执行的应用程序)与应用程序源代码(这是BlackBerry工作区中的代码库)混淆。
因此,通常来说,对于自己的应用程序流程内部的常规使用,唯一的性能提升就是不进行方法调用,这是一个荒谬的增益(除非您从循环内部进行调用)。如果有的话,是因为程序员的性能提高了,因为键入的次数更少了。