の呼び出しeElement.getElementsByTagName(sTag)
は、いくつかのオブジェクトを返します。その後、item(0)
このオブジェクトで呼び出されます。等々。つまり、上記のステートメントは次のようになります。
SomeObject so = eElement.getElementsByTagName(sTag);
OtherObject oo = so.item(0);
NodeList nlList = oo.getChildNodes();
この手法はメソッドチェーンと呼ばれ、コードをより簡潔で読みやすくするために、やりすぎではないにしても非常に便利です。
その特殊な形式(Hibernateなどの一部のフレームワークで広く使用されている)は、同じオブジェクトに対するメソッド呼び出しの連鎖です。
SomeObject o = new SomeObject().setFoo(1).setBar("boo").setBaz(42);
これは間違いなくよりコンパクトです
SomeObject o = new SomeObject();
o.setFoo(1);
o.setBar("boo");
o.setBaz(42);
必要なパラメーターを持つコンストラクターがない場合は、これが間違いなく必要です。しかし、そのようなコンストラクターが利用可能であっても、次のように主張するかもしれません。
SomeObject o = new SomeObject(1, "boo", 42);
メソッド連鎖イディオムよりも読みにくいです。残念ながら、Java(C#とは異なり)には、メソッド呼び出しに名前付きパラメーターがありません。