ال String يعتبر من اهم ال objects اللي بنستخدمها في الكود لانه بحتوي علي methods كتير بتسهل عليك شغلك وهما 3 انواع
- String
- String Builder
- String Buffer
الثلاثة تقريبا بيعملو نفس الحاجة لكن بيختلفو في خصائصهم وامتي نستخدمهم
هنتكلم النهاردة عن الString
- هو Immutable class بمعني انه لو عملت كده
String name = "Mohamed". f
وبعدين غيرت قيمة
name ="'Mohamed Gad"; x
اللي هيعمله انه ه create new object with the new value مش هيغير في نفس مكان ال object الاولاني
لانه
-بيتحفظ في جزء من ال memory اسمه string pool وده مكان خاص بيه بيتحط فيه اي value جديدة لاي string بحيث ان اي object جديد اخد قيمة شبه اي قيمة في string pool بيروح يشاور عليها مش بيعمل واحد جديد
String lastName="Mohamed". x
كده هيكون name==lastName لان الاتنين بيشاورو علي نفس المكان في ال memory
لكن الدنيا بتختلف لما نستخدم ال new عند انشاء ال Object لانه هنا هيتعامل كانه object عادي ويتم حفظه في ال Heap memory
String firstName = new String("Mohamed"). x
هنا name!=firstName لان كل واحد بيشاور علي اوبجكت مختلف.
EmoticonEmoticon