" उदाहरण चर पर स्थानीय चर पसंद करने के लिए तर्क " पर स्वीकृत उत्तर के अनुसार , चर संभव सबसे कम दायरे में रहना चाहिए।
मेरी व्याख्या में समस्या को सरल बनाएं, इसका मतलब है कि हमें इस तरह के कोड को रिफ्लेक्टर करना चाहिए:
public class Main {
private A a;
private B b;
public ABResult getResult() {
getA();
getB();
return ABFactory.mix(a, b);
}
private getA() {
a = SomeFactory.getA();
}
private getB() {
b = SomeFactory.getB();
}
}
कुछ इस तरह से:
public class Main {
public ABResult getResult() {
A a = getA();
B b = getB();
return ABFactory.mix(a, b);
}
private getA() {
return SomeFactory.getA();
}
private getB() {
return SomeFactory.getB();
}
}
लेकिन "चर" की "भावना" के अनुसार संभव के रूप में सबसे छोटे दायरे में रहना चाहिए "," चर कभी नहीं "" छोटे चर "की तुलना में छोटा गुंजाइश है"? इसलिए मुझे लगता है कि ऊपर दिए गए संस्करण को फिर से भरना चाहिए:
public class Main {
public ABResult getResult() {
return ABFactory.mix(getA(), getB());
}
private getA() {
return SomeFactory.getA();
}
private getB() {
return SomeFactory.getB();
}
}
ताकि getResult()
किसी भी स्थानीय चर बिल्कुल नहीं है। क्या यह सच है?
final
कीवर्ड का उपयोग करना चाहिए या नहीं।