რა არის სიმებიანი აუზი ჯავაში?
რა არის სიმებიანი აუზი ჯავაში?

ვიდეო: რა არის სიმებიანი აუზი ჯავაში?

ვიდეო: რა არის სიმებიანი აუზი ჯავაში?
ვიდეო: What is StringPool In Java ? || Java Online Training 2024, აპრილი
Anonim

როგორც სახელი გვთავაზობს, სიმებიანი აუზი ჯავაში არის აუზი დან სიმები ინახება ჯავა გროვის მეხსიერება. ჩვენ ეს ვიცით სიმებიანი არის სპეციალური კლასი ჯავა და ჩვენ შეგვიძლია შევქმნათ სიმებიანი ობიექტები ახალი ოპერატორის გამოყენებით, ასევე მნიშვნელობების ორმაგი ბრჭყალებში.

ამ გზით, რა სარგებლობა აქვს ჯავაში სიმებიანი აუზის?

The ჯავის სტრიქონი მუდმივი აუზი არის ფართობი გროვის მეხსიერებაში, სადაც ჯავა ინახავს სიტყვასიტყვით სიმებიანი ღირებულებები. გროვა მეხსიერების არეა გამოყენებული დროული ოპერაციებისთვის. როდესაც იქმნება ახალი ცვლადი და მიენიჭება მნიშვნელობა, ჯავა ამოწმებს, არის თუ არა ეს ზუსტი მნიშვნელობა აუზი.

გარდა ზემოთ, როგორ მუშაობს სტრიქონი სიმებიანი აუზში? რაოდენობის შესამცირებლად სიმებიანი JVM-ში შექმნილი ობიექტები, სიმებიანი კლასი ინახავს ა აუზი დან სიმები . ყოველ ჯერზე ა სიმებიანი ლიტერალი იქმნება, JVM ამოწმებს სიმებიანი სიტყვასიტყვით აუზი პირველი. თუ სიმებიანი არ არსებობს აუზი , ახალი სიმებიანი ობიექტი ინიციალიზდება და მოთავსებულია აუზი.

ამასთან დაკავშირებით, რატომ არის საჭირო სიმებიანი აუზი?

ეს უსაფრთხოა, რადგან სიმებიანი ჯავაში უცვლელია. შედეგად, ორივე s და t მიუთითებს ერთსა და იმავე ობიექტზე და ცოტა მეხსიერებაა შენახული. სახელი სიმებიანი აუზი “მომდინარეობს იმ იდეიდან, რომელიც უკვე განსაზღვრულია სიმებიანი ინახება ზოგიერთში აუზი და ახლის შექმნამდე სიმებიანი ობიექტის შემდგენელი ამოწმებს თუ არა სიმებიანი უკვე განსაზღვრულია.

რა არის ძირითადი მეხსიერება ჯავაში?

პირველ რიგში, " ძირითადი მეხსიერება "ვგულისხმობთ " ჯავა გროვა, როგორც ჩანს JVM'. JVM ზოგადად თავისუფალია იმუშაოს ცვლადის ლოკალურ ასლზე. მაგალითად, JIT შემდგენელს შეუძლია შექმნას კოდი, რომელიც იტვირთება a-ს მნიშვნელობა ჯავა ცვლადი რეესტრში და შემდეგ მუშაობს ამ რეესტრზე.

გირჩევთ: