क्या यह "यह" जावा रिटर्न में बसने के लिए एक अच्छा या बुरा विचार है?
public Employee setName(String name){
this.name = name;
return this;
}
यह पैटर्न उपयोगी हो सकता है क्योंकि तब आप इस तरह से बसने की श्रृंखला बना सकते हैं:
list.add(new Employee().setName("Jack Sparrow").setId(1).setFoo("bacon!"));
इसके अलावा:
Employee e = new Employee();
e.setName("Jack Sparrow");
...and so on...
list.add(e);
... लेकिन यह मानक सम्मेलन के खिलाफ जाता है। मुझे लगता है कि यह सिर्फ इसलिए सार्थक हो सकता है क्योंकि यह उस सेटर को कुछ और उपयोगी बना सकता है। मैंने देखा है कि यह पैटर्न कुछ स्थानों (जैसे JMock, JPA) का उपयोग करता है, लेकिन यह असामान्य लगता है, और केवल आम तौर पर बहुत अच्छी तरह से परिभाषित एपीआई के लिए उपयोग किया जाता है जहां यह पैटर्न हर जगह उपयोग किया जाता है।
अपडेट करें:
मैंने जो वर्णन किया है वह स्पष्ट रूप से मान्य है, लेकिन मैं वास्तव में जिस चीज की तलाश कर रहा हूं वह इस पर कुछ विचार है कि क्या यह आमतौर पर स्वीकार्य है, और यदि कोई नुकसान या संबंधित सर्वोत्तम अभ्यास हैं। मैं बिल्डर पैटर्न के बारे में जानता हूं, लेकिन यह थोड़ा अधिक शामिल है, फिर मैं जो वर्णन कर रहा हूं - जैसा कि जोश बलोच ने वर्णन किया है कि ऑब्जेक्ट निर्माण के लिए एक संबद्ध स्थिर बिल्डर वर्ग है।
this
। कभी-कभी, मैं फ़ंक्शन को बदल भी देता हूं ताकि मूल्य वापस करने के बजाय, यह ऑब्जेक्ट के सदस्य पर संचालित हो, बस इसलिए मैं यह कर सकता हूं। यह अद्भुत है। :)