JavaRush /Blog Java /Random-MS /Peluasan/penyempitan jenis rujukan: sumber berbeza - tafs...
Core
Tahap
Екатеринбург

Peluasan/penyempitan jenis rujukan: sumber berbeza - tafsiran berbeza

Diterbitkan dalam kumpulan
Selamat petang. Terdapat syak wasangka ralat dalam kuliah JavaRush. Biarkan ada kelas Induk dan kelas Anak yang diwarisi daripadanya. Biar ada baris kod berikut: Parent parent = new Child; Child child = (Child) parent; Menurut kuliah kursus tahap 12, pelajaran 1 (1. Polimorfisme dan overriding), perenggan 5) (Jenis tuangan. ) baris pertama adalah penyempitan, dan yang kedua adalah pengembangan (dalam kuliah , Lembu adalah induk, Paus adalah pewaris) Tetapi ini tidak benar. Semuanya betul-betul bertentangan. Maksud apa yang diterangkan adalah jelas: dalam baris pertama kami mencipta objek jenis Anak dan mengehadkan penggunaannya hanya kepada kaedah yang diterangkan dalam kelas Induk. Tetapi ini adalah lanjutan dan oleh itu pengurangan sedemikian berlaku secara tersirat. Dan dalam bahan tambahan tahap 10 dikatakan: Teks anda untuk dipautkan...
Sambungan bermaksud beralih daripada jenis yang lebih khusus kepada jenis yang kurang khusus, i.e. peralihan daripada anak kepada ibu bapa. Dalam contoh kami, penukaran daripada mana-mana waris (Anak, Anak2) kepada ibu bapa (Ibu bapa) ialah lanjutan, peralihan kepada jenis yang lebih umum. Sama seperti kes dengan jenis primitif, peralihan ini dibuat oleh JVM sendiri jika perlu dan tidak dapat dilihat oleh pembangun, iaitu, ia tidak memerlukan sebarang usaha tambahan, kerana ia sentiasa berjaya: anda sentiasa boleh mengakses objek yang dihasilkan daripada pewaris mengikut jenis induknya. Ibu bapa p1=Anak baru(); Ibu bapa p2=Anak baru2(); Dalam kedua-dua baris, pembolehubah jenis Induk diberikan nilai jenis yang berbeza, yang bermaksud penukaran berlaku. Memandangkan ini adalah lanjutan, ia dilakukan secara automatik dan sentiasa berjaya.
Baris kedua contoh saya, sebaliknya, mengikut tambah yang sama. bahan adalah penyempitan yang memerlukan petunjuk jelas jenis dalam kurungan. Dan dalam kuliah itu ditafsirkan sebagai lanjutan, yang mungkin salah. Tolong jelaskan. Saya tidak mahu mempunyai pandangan bercanggah berganda tentang pemutus jenis. Di bawah adalah serpihan syarahan. serpihan syarahan Masih terdapat syak wasangka kesilapan dalam kuliah (sebelumnya). Di manakah saya harus menulis tentang ini? Saya tidak menemuinya dalam Soalan Lazim.
Komen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION