匿名对象有什么优点?

What are the advantages of an anonymous object?

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

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


 }
 .
 .
}

我这样称呼它:

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

我想知道如果我创建匿名 ``Objectof any class (new Sample()) and call anyrequiremethod if I don't have any further use of thisObject` 是否有任何优势。

我假设您是在询问您发布的代码,与以下内容形成对比:

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

(您明确地将 new Sample() 分配给局部变量)。

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