Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

जावा में स्ट्रिंग कॉन्स्टेंट पूल में स्ट्रिंग अक्षर क्यों संग्रहीत किया जाता है?


Java में स्ट्रिंग ऑब्जेक्ट बनाने के दो तरीके हैं

  • नए ऑपरेटर का उपयोग करके
String str = new String("Tutorials Point");
  • स्ट्रिंग अक्षर का उपयोग करके
String str = "Tutorials Point";

जब भी हम जावा में नया स्ट्रिंग () कहते हैं, तो यह हीप मेमोरी में एक ऑब्जेक्ट बनाएगा और स्ट्रिंग अक्षर स्ट्रिंग कॉन्स्टेंट पूल (एससीपी) में जाएगा।

वस्तुओं के लिए, जेवीएम ने एससीपी का इस्तेमाल किया जो जावा में कुशल मेमोरी प्रबंधन के लिए है। अन्य जावा वस्तुओं के विपरीत, ढेर क्षेत्र पर स्ट्रिंग ऑब्जेक्ट को प्रबंधित करने के बजाय, उन्होंने स्ट्रिंग निरंतर पूल की शुरुआत की। स्ट्रिंग स्थिरांक पूल की एक महत्वपूर्ण विशेषता यह है कि यदि पूल में पहले से ही स्ट्रिंग स्थिरांक है तो यह समान स्ट्रिंग ऑब्जेक्ट नहीं बनाता है।

उदाहरण

public class SCPDemo {
   public static void main (String args[]) {
      String s1 = "Tutorials Point";
      String s2 = "Tutorials Point";
      System.out.println("s1 and s2 are string literals:");
      System.out.println(s1 == s2);
      String s3 = new String("Tutorials Point");
      String s4 = new String("Tutorials Point");
      System.out.println("s3 and s4 with new operator:");
      System.out.println(s3 == s4);
   }
}

आउटपुट

s1 and s2 are string literals:
true
s3 and s4 with new operator:
false

  1. जावा में StringIndexOutOfBoundsException क्या है?

    जावा में वर्णों के अनुक्रम को संग्रहीत करने के लिए स्ट्रिंग्स का उपयोग किया जाता है, उन्हें वस्तुओं के रूप में माना जाता है। java.lang पैकेज का स्ट्रिंग वर्ग एक स्ट्रिंग का प्रतिनिधित्व करता है। आप या तो नए कीवर्ड (किसी भी अन्य ऑब्जेक्ट की तरह) का उपयोग करके या शाब्दिक (किसी भी अन्य आदिम डेटाटाइप क

  1. जावा में स्ट्रिंग कॉन्स्टेंट पूल में स्ट्रिंग अक्षर क्यों संग्रहीत किया जाता है?

    Java में स्ट्रिंग ऑब्जेक्ट बनाने के दो तरीके हैं नए ऑपरेटर का उपयोग करके String str = new String("Tutorials Point"); स्ट्रिंग अक्षर का उपयोग करके String str = "Tutorials Point"; जब भी हम जावा में नया स्ट्रिंग () कहते हैं, तो यह हीप मेमोरी में एक ऑब्जेक्ट बनाएगा और स्ट्रिंग अ

  1. जावा में स्ट्रिंग क्लास अपरिवर्तनीय या अंतिम क्यों है?

    स्ट्रिंग अपरिवर्तनीय है इसका मतलब है कि हम ऑब्जेक्ट को स्वयं नहीं बदल सकते हैं, लेकिन हम ऑब्जेक्ट के संदर्भ को बदल सकते हैं। स्ट्रिंग को अंतिम रूप दिया जाता है ताकि अन्य इसे विस्तारित न कर सकें और इसकी अपरिवर्तनीयता को नष्ट कर सकें। सुरक्षा पैरामीटर्स को आमतौर पर नेटवर्क कनेक्शन, डेटाबेस कनेक्शन य