जावा स्ट्रिंग पूल प्रतिबिंब के साथ मिलकर जावा में कुछ अकल्पनीय परिणाम उपज कर सकते हैं:यह जावा कोड स्निपेट कैसे काम करता है? (स्ट्रिंग पूल और प्रतिबिंब)
import java.lang.reflect.Field;
class MessingWithString {
public static void main (String[] args) {
String str = "Mario";
toLuigi(str);
System.out.println(str + " " + "Mario");
}
public static void toLuigi(String original) {
try {
Field stringValue = String.class.getDeclaredField("value");
stringValue.setAccessible(true);
stringValue.set(original, "Luigi".toCharArray());
} catch (Exception ex) {
// Ignore exceptions
}
}
}
कोड से ऊपर प्रिंट होगा:
"Luigi Luigi"
मारियो का क्या हुआ?
@ जो मैं कहूंगा कि इसे पास कर दें। [जेफ एटवुड: "मैंने चिंता करना बंद कर दिया है और प्यार (कुछ) नकल करना बंद कर दिया है। और आपको भी चाहिए।"] (Https://blog.stackoverflow.com/2010/11/dr-strangedupe-or-how-i- सीखा-से-रोक-चिंता-और-प्यार-डुप्लिकेशंस /) – Mindwin
@ माइंडविन: इसका मतलब यह नहीं है कि अगर हम वास्तव में ऐसा करते हैं तो हमें डुप्लिकेट के रूप में प्रश्न बंद करना बंद करना चाहिए। असल में, जेफ का आलेख * हमें * डुप्लीकेट के रूप में प्रश्न बंद करने के लिए प्रोत्साहित करता है - क्योंकि यह उनसे जुड़ने का तरीका है। –