एक गैर स्थिर सेटर विधि इस तरह दिख सकता:जावा स्थिर आत्म संदर्भ
private int var;
public void setVar(int var) {
this.var = var;
}
और मैं बाहर एक स्थिर विधि के साथ हल करने के लिए कि कैसे नहीं मिल सकता है:
private static int var;
public static void setVar(int var) {
// ???
}
एक समाधान myClass.var = var;
लिखना है। लेकिन यह बदसूरत है, क्योंकि जब मैं अपनी कक्षा का नाम बदलता हूं, तो मुझे सभी घटनाओं को ढूंढना और बदलना पड़ता है। एक और समाधान पैरामीटर का नाम v
पर पुनर्नामित करना है और var = v;
लिखें। मेरे लिए यह भी बदसूरत है।
क्या यह वास्तव में php में हल करने का कोई तरीका नहीं है?
लिए एक उचित आईडीई उपयोग करते समय, आप हमेशा ऐसा कर सकते हैं एक * Refactor नाम बदलें *, जो किसी भी स्पष्ट classname रूप में अच्छी तरह से बदल जाएगा। – skiwi
यदि आप अपनी कक्षा का नाम बदलते समय कुछ रिफैक्टरिंग समाधान का उपयोग करते हैं तो इसे आपके लिए उन संदर्भों का ख्याल रखना चाहिए। –
इस तथ्य के कारण कि वर्ग फ़ील्ड 'var' निजी है, आपको कभी भी संदर्भ के लिए क्लास में कहीं और खोजना नहीं है, जब आप उचित रीफैक्टरिंग टूल (आईडीई की तरह) के बिना कक्षा का नाम बदलते हैं। इसके अलावा, यदि आप आईडीई का उपयोग नहीं करते हैं तो आप अन्य प्रकार के आयात को कैसे सेट करते हैं, जहां आप सेटर विधि 'setVar() 'का उपयोग करते हैं? मेरा सुझाव है कि आप एक आईडीई का उपयोग करें और वहां कोई _real_ समस्या नहीं होनी चाहिए। – Harmlezz