首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在函数中传递对象或静态调用对象,哪个更快

在函数中传递对象或静态调用对象,哪个更快
EN

Stack Overflow用户
提问于 2017-08-04 04:19:00
回答 2查看 66关注 0票数 0

假设我需要访问变量'asdf‘大约1000次。

更快的是:创建对象Foo并将其作为参数传递给bar构造函数,然后通过getter或静态访问Foo的数字来访问它。或者这两种方法具有相同的性能?

代码语言:javascript
运行
复制
Class Foo {
   public int asdf;
} 

Class Bar {
   Foo foo;
   Bar(Foo foo1) {
      this.foo = foo;
   }
   public void funcBar() {
        foo.asdf;
   }
}

Class Foo {
   public static int asdf;
} 

Class Bar {
   public void funcBar() {
        Foo.asdf;
   }
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-08-04 04:23:59

根据SO用户Mike Nakis的说法,作为对您问题的纯粹回答,静态调用将是最快的,其次是非虚拟调用,然后是虚拟调用。你可以看到他的回答here。尽管如此,还是要考虑代码的可读性。拥有清晰的、可维护的代码要比挤出每一分性能,但不能被其他开发人员理解的代码要好。在许多情况下,检索的速度可以忽略不计。

票数 2
EN

Stack Overflow用户

发布于 2017-08-04 04:21:37

1000次算不了什么。

因此,您可以使用直接和“干净”的方式编写代码来完成工作。

担心好的设计,而不是把时间浪费在解决不存在的性能问题上。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45493828

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档