تفاوت اصلی دو عبارت نمونه ساز رایج

پرسیده شده
فعالیت 1514 روز پیش
دیده شده 960 بار
0

فرق دو عبارت زير هنگام ایجاد یک نمونه از کلاس Animal در چيست؟
;Animal animal

;()Animal animal = new  Animal

فایل پیوست

پژمان آزاد
پژمان آزاد

26 دی 98

0
حذف شده

خط اول: یک Reference Variable ایجاد کردید که به هیچ خانه ای در حافظه heap اشاره نمی کنه و اصطلاحا initialize نشده

خط دوم: یک Reference Variable ایجاد کردید و یک object و instance جدید از اون ساخته شده. متغیر animal اشاره گری در حافظه stack می شه که به object ای در حافظه ی heap اشاره می کنه

فایل پیوست

سعید شاهینی

توسط

سعید شاهینی

28 دی 98

حذف شده
ممنون از راهنمایی خوبتون. ولی گمان میکنم در عمل اگر بدنه Constructor کلاس ما خالی از مقدار دهی به فیلدهای کلاس باشه(Constructor پیش فرض کلاس حفظ شده باشه). عملا دو عبارت بالا تفاوتی نخواهند داشت. درست نمیگم استاد؟
پژمان آزاد

28 دی 98

حذف شده
ممنون از راهنمایی خوبتون. ولی گمان میکنم در عمل اگر بدنه Constructor کلاس ما خالی از مقدار دهی به فیلدهای کلاس باشه(Constructor پیش فرض کلاس حفظ شده باشه). عملا دو عبارت بالا تفاوتی نخواهند داشت. درست نمیگم استاد؟
پژمان آزاد

28 دی 98

حذف شده
ممنون از راهنمایی خوبتون. ولی گمان میکنم در عمل اگر بدنه Constructor کلاس ما خالی از مقدار دهی به فیلدهای کلاس باشه(Constructor پیش فرض کلاس حفظ شده باشه). عملا دو عبارت بالا تفاوتی نخواهند داشت. درست نمیگم استاد؟
پژمان آزاد

28 دی 98

1
حذف شده

ببخشید سه تا دیدگاه تکراری ایجاد شده

فایل پیوست

پژمان آزاد

توسط

پژمان آزاد

28 دی 98

1
حذف شده

خیر همانطور که استاد اشاره کردند خط اول شما فقط یک variable تعریف کردین که از نوع Reference DataType است و هیچ value یی بهش انتساب ندادین خط دوم علاوه بر تعریف Variable یک شی از کلاستون ساختین و درون متغیر قرار دادین که اون متغیر اشاره گری است برای دسترسی به داده هاتون در حافظه

فایل پیوست

میلاد عزیززاده گلنگشی

توسط

میلاد عزیززاده گلنگشی

19 اسفند 98