【问题标题】:Android efficiency importing static methods or importing the classAndroid效率导入静态方法或导入类
【发布时间】:2015-04-22 09:49:21
【问题描述】:

我在一些项目中看到人们直接将静态方法导入 Activity 或类而不是整个类。

我的问题是,知道在同一个类中可以多次调用静态方法(为了更准确,5 次或更多次),导入静态方法是否更有效?最好通过它的类来调用它?

【问题讨论】:

  • 最好通过类来调用。静态的东西会弄得一团糟。

标签: java android performance static static-methods


【解决方案1】:

您的问题(根据我的说法)似乎解决了同样的问题。 问题是: 直接调用ClassName.staticMethod()

或者这个

import static ClassName.staticMethod;
//rest of the stuff
staticMethod();

在这两种情况下,只要第一次调用类,方法就会作为单例加载。如果您导入静态方法,那么那是第一次,否则当您使用该类的方法时。

所以它不会有所作为,因为 JVM/DVM(不确定 ART)已经拥有所需的数据。

如果你的问题是关于使用什么修饰符,那么this 提倡静态。

但如前所述,直接涉及静态方法只是一团糟。 所以现在它更多的是个人选择。 阅读为:除非您有非常具体的原因,否则不要直接导入静态方法。

【讨论】:

    【解决方案2】:

    静态导入和类导入在性能上没有区别。

    但是,导入类并使用类名调用静态方法被认为是一种更好的做法,因为代码更易于阅读。使用静态导入可能会有点混淆哪些方法是类的非静态方法,哪些方法是其他类的静态方法。

    【讨论】:

      猜你喜欢
      • 2012-12-13
      • 1970-01-01
      • 2012-01-31
      • 2019-08-31
      • 1970-01-01
      • 1970-01-01
      • 2018-02-18
      • 2020-10-21
      • 2013-01-02
      相关资源
      最近更新 更多