۱ مجتبی
instanceof
جامعه جاوا (اندروید) ایجاد شده در ۱۴ مرداد ۱۴۰۱

سلام خسته نباشید

استاد مینویسن Animal animal=new Horse(); و میگن یک متغیری داریم از نوع کلاس Animal که آبجکت Horse است این ینی چی؟

اینجا اومده از کلاس Animal که یک reference data type هست یک متغیر میسازه بعد میاد از constructor کلاس Horse استقاده میکنه اینکار ینی چی

سلام مجتبی جان

متغیر ما همونطور که گفتین از نوع کلاس Animal هست یعنی :

Animal animal = null;

حالا این animal ما به چیزی اشاره نمیکنه و مقدارش null هست پس ما باید این animal که شی ما هست بگیم داره به چه چیزی اشاره میکنه که مینویسیم :

Animal animal=new Horse(); 

ما تونستیم این کار رو کنیم چون Hourse ما از Animal ارث بری کرده پس نتیجه میگیریم Hourse هست یک Animal (شبیه دنیای واقعی رفتار کردیم)

ولی برعکسش قابل قبول نیست یعنی Animal لزوما یک Hourse نیست

این که این موارد کجا بدرد میخوره و چرا این کار رو کردیم بایستی سرفصل‌ها رو دنبال کنید به مرور یاد خواهید گرفت


بهترین پاسخ
پوریا شفیعی ۱۵ مرداد ۱۴۰۱، ۰۸:۴۱