J Something something = new Something()。其他东西;

时间:2009-06-14 17:54:22

标签: java object methods

我可以发誓我看到一个以这种方式创建的对象。 somethingelse做了什么?

3 个答案:

答案 0 :(得分:4)

从字面上看,可能是班级JSomething有一个名为somethingelse的字段,类型为JSomething

class JSomething {
    JSomething somethingelse;
}

在这种情况下,可以通过以下方式获取JSomethingsomethingelse JSomething的引用:

JSomething something = new JSomething().somethingelse;

但是,我怀疑这被视为名为design patternbuilder pattern的一部分 - 其中方法调用返回相同类型的实例。

例如,采用StringBuilder.append方法 - 它会返回StringBuilder。因此,可以执行以下操作:

StringBuilder sb = new StringBuilder("Hello").append("World!");

答案 1 :(得分:2)

似乎新的JSomething()。somethingelse只是一个字段访问。也许JSomething.somethingelse的写得很糟糕。例如Color color = new Color(0).black;而不是Color color = Color.black;

答案 2 :(得分:0)

在此上下文中,

somethingelse将是JSomething的一个实例,它包含在JSomething中。