ما هو العمر الافتراضي للمتغير في البرنامج (في Java)؟

StackOverflow https://stackoverflow.com/questions/1534882

  •  20-09-2019
  •  | 
  •  

سؤال

هل يمكن أن تخبرني كم من الوقت يعيش المتغير في البرنامج (في Java).أي.المتغيرات المعلنة داخل الطرق، والمتغيرات المستخدمة في المعلمات، والمتغيرات الثابتة، والمتغيرات المستخدمة للعودة من الطريقة، وما إلى ذلك.

شكرًا.

هل كانت مفيدة؟

المحلول

  1. المراجع المعلنة داخل الأساليب تخرج عن النطاق عند خروج الطريقة.
  2. لن تكون المعلمات التي تم تمريرها إلى الأساليب مؤهلة للحصول على GC حتى لا يكون هناك أي إشارات إليها أو تخرج عن النطاق.
  3. ترتبط المراجع الثابتة بفصل دراسي وتستمر طالما تم تحميل الفصل.
  4. لن تكون المراجع التي تم إرجاعها مؤهلة للحصول على GC حتى لا يكون هناك أي مراجع أخرى لها أو تخرج عن النطاق.

نصائح أخرى

يتم ضمان بقاء الكائنات في Java طالما يمكن الرجوع إليها من خلال ملف إغلاق متعد التابع مجموعة الجذر.هذا تقريب متحفظ للكائنات الحية للتطبيق¹.

يحرر: هل هذا السؤال يتعلق عمر الكائن, ، أو نطاق متغير؟لدينا بعض المصطلحات المختلطة مستمرة.

¹ الكائن المباشر هو كائن سيتم الرجوع إليه مرة أخرى قبل إنهاء التطبيق.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top