tgoop.com/Fara_Java/42
Last Update:
✳️ آموزش مقدماتی جاوا (بخش دوم) — از صفر تا صد
در بخش قبلی این سری آموزش مقدماتی جاوا با برخی مفاهیم ابتدایی زبان برنامهنویسی جاوا آشنا شدیم. در این نوشته نیز برخی مفاهیم دیگر جاوا توضیح داده شدهاند.
══ فهرست مطالب ══
○ Immutable
○ String ،StringBuffer و StringBuilder
○ سریالسازی
○ Comparator و Comparable
○ Collection
○ Guava
○ نسخههای جاوا
🔸 Immutable
هر کلاسی که حالت شیء آن پس از ایجاد وهله نتواند تغییر یابد به نام Immutable شناخته میشود.
– رشته و همه کلاسهای پوششی آن و همچنین کلاس enum نمونههایی از کلاس Immutable محسوب میشوند.
– کلاسهای Immutable از نظر ارثبری، thread-safe هستند.
روش thread-safe ساختن یک کلاس به صورت زیر است:
– ابتدا مطمئن شوید که کلاس نمیتواند override شود. به این منظور کلاس را به صورت final دربیاورید.
– همه فیلدهای آن خصوصی باشند.
– هیچ متدی وجود نداشته باشد که بتواند حالت شیء را تغییر دهد. از این رو نباید از متدهای setter استفاده کرد.
– از یک کپی defensive یا کلون استفاده کنید.
BigDecimal نیز از نظر فنی Immutable محسوب نمیشود، زیرا یک کلاس final نیست.
🔸 String ،StringBuffer و StringBuilder
«رشته» (String) به صورت Immutable است، چون ما نمیتوانیم یک شیء رشته را تغییر دهیم. هر بار که مقدار جدیدی به یک رشته انتساب میدهید، در واقع یک شیء جدید رشته در پشته ایجاد میشود و اشارهگر به آن شیء جدید اشاره میکند.
Pool رشته یک ناحیه حافظه خاص در هیپ جاوا است. هنگامی که یک رشته ایجاد میشود، در صورتی که رشته از قبل در pool موجود باشد، به جای ایجاد یک شیء جدید و بازگشت دادن ارجاع آن، ارجاعی به رشته موجود بازگشت مییابد.
دلایل مختلفی برای این حالت وجود دارد که در ادامه به برخی از آنها اشاره میکنیم.
مطالعه ادامه مطلب 👇👇
🔗 آموزش مقدماتی جاوا (بخش دوم) — از صفر تا صد — کلیک کنید (+)
📌 کانال اختصاصی آموزشی برنامهنویسی جاوا
آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامهنویسی جاوا را در کانال اختصاصی [@Fara_Java] دنبال کنید. 👇
@Fara_Java — مطالب و آموزشهای برنامهنویسی جاوا فرادرس
BY Fara_Java | فرا جاوا: آموزش برنامهنویسی جاوا

Share with your friend now:
tgoop.com/Fara_Java/42