java - 匿名对象有什么优点?

标签 java anonymous-objects

我有一个名为 Sample 的类,它在我的代码中使用,如下所示:

class Sample{
 .
 .
 Object someMethod(){
  return someObject;


 }
 .
 .
}

我这样调用它:

Object ob = new Sample().someMethod();

我想知道如果我创建任何类的匿名``Object(new Sample())并调用任何require方法是否有任何优势如果我不再使用这个Object`。

最佳答案

我假设您正在询问您发布的代码,与以下代码相比:

Sample s = new Sample();
s.someMethod();

(您将 new Sample() 显式分配给局部变量)。

无论怎样,都没有显着的性能或内存优势。如果将引用存储在局部变量中,然后调用该方法,我认为存储引用可能会带来(极)小的性能损失。然而,我怀疑许多编译器会注意到,一旦调用该方法,变量就死了,并且会优化分配。 JIT 编译器可能会完成这项工作。但我们最多讨论几个 cpu 周期。

关于java - 匿名对象有什么优点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27812426/

相关文章:

java - 程序结束时不考虑 if 语句(编码初学者)

java - TLS v1.2 上的 Android 客户端/服务器

java - GridLayout - JButtons、数组和图像?

c# - 匿名类型范围问题

c# - 在 C# 中的匿名对象列表中查找项目

c# - 为什么我无法实例化从匿名对象推断类型的泛型类?

java - 在 Java 中,两个 double 相乘为零?

c# - 有没有一种简单的方法来合并 C# 匿名对象

java - Maven 依赖项在 Spring 配置中不可见