Perbezaan antara polimorfisme dan warisan di OOP

Perbezaan antara polimorfisme dan warisan di OOP

Perbezaan utama - Polimorfisme vs Warisan di OOP
 

Pengaturcaraan Berorientasikan Objek (OOP) biasanya digunakan untuk membangunkan perisian. Banyak bahasa pengaturcaraan menyokong pengaturcaraan berorientasikan objek. Pengaturcaraan Berorientasikan Objek adalah metodologi untuk merancang program menggunakan kelas dan objek. Kelas di Oop adalah pelan tindakan untuk membuat objek. Kelas mempunyai sifat dan kaedah. Objek adalah contoh kelas. OOP mengandungi empat tiang seperti warisan, polimorfisme, abstraksi dan enkapsulasi. Artikel ini membincangkan perbezaan antara polimorfisme dan warisan di OOP. The Perbezaan utama antara polimorfisme dan warisan di OOP ialah Polimorfisme adalah keupayaan objek untuk berkelakuan dalam pelbagai cara dan warisan adalah untuk membuat kelas baru menggunakan sifat dan kaedah kelas yang ada.

Kandungan

1. Gambaran Keseluruhan dan Perbezaan Utama
2. Apakah polimorfisme di OOP
3. Apa itu warisan di OOP
4. Persamaan antara polimorfisme dan warisan di OOP
5. Perbandingan sampingan - polimorfisme vs warisan dalam oop dalam bentuk jadual
6. Ringkasan

Apakah polimorfisme di OOP?

Polimorfisme adalah untuk menunjukkan pelbagai bentuk. Satu objek boleh mempunyai banyak tingkah laku. Polimorfisme boleh dibahagikan kepada dua kategori. Mereka terlalu banyak dan mengatasi.

Terlalu banyak

Rujuk program di bawah yang ditulis di Java.

Rajah 01: Berlebihan

Menurut program di atas, objek jenis A dibuat. Semasa memanggil OBJ.jumlah (); ia akan memberikan output yang berkaitan dengan jumlah kaedah (). Semasa memanggil OBJ.jumlah (2,3); Ia akan memberikan output yang berkaitan dengan jumlah (int a, int b). Dapat diperhatikan bahawa objek yang sama mempunyai tingkah laku yang berbeza bergantung pada keadaan. Apabila terdapat banyak kaedah dengan nama yang sama, tetapi dengan parameter yang berbeza, ia dikenali sebagai terlalu banyak. Ia juga dikenali sebagai mengikat statik atau menyusun polimorfisme masa.

Mengatasi

Satu lagi jenis polimorfisme adalah mengatasi. Rujuk program di bawah yang ditulis di Java.

Rajah 02: Mengatasi

Menurut program di atas, terdapat paparan kaedah () dalam Kelas A. Kelas B meluas dari Kelas A. Oleh itu, semua kaedah dalam Kelas A boleh diakses oleh Kelas B. Ia adalah warisan. Konsep warisan diterangkan lebih jauh kemudian.

Kelas B juga mempunyai paparan kaedah yang sama (). Apabila membuat objek Jenis A dan Kaedah Paparan Panggilan, output akan memberi b. Kaedah paparan Kelas A ditindih oleh kaedah paparan Kelas B. Jadi, outputnya adalah b.

Apabila terdapat kaedah dengan nama yang sama dan parameter yang sama tetapi dalam dua kelas yang berbeza, dan mereka dikaitkan dengan warisan, ia dikenali sebagai mengatasi masalah. Ia juga dikenali sebagai Mengikat lewat, mengikat dinamik, polimorfisme runtime. Beban dan overriding dipanggil sebagai polimorfisme. Ini adalah konsep utama dalam pengaturcaraan berorientasikan objek.

Apa itu warisan di OOP?

Rujuk program di bawah yang ditulis di Java.

Rajah 03: Contoh warisan

Menurut program di atas, Kelas A mempunyai kaedah Jumlah () dan Kelas B mempunyai kaedah sub ().

Kaedah Jumlah () Kelas A boleh digunakan dalam Kelas B menggunakan kata kunci Extend. Menggunakan semula sifat dan kaedah dalam kelas yang sedia ada untuk membuat kelas baru dikenali sebagai warisan. Malah tidak ada jumlah () kaedah dalam Kelas B; ia diwarisi dari Kelas A. Warisan berguna untuk kebolehgunaan semula kod. Kelas yang lebih tua dipanggil Kelas Asas, Superclass atau kelas induk. Kelas yang diperolehi dipanggil subclass atau kelas kanak -kanak.

Jenis warisan

Terdapat pelbagai jenis warisan. Mereka adalah warisan satu peringkat, warisan pelbagai peringkat, warisan berganda, warisan hierarki dan warisan hibrid.

Warisan tunggal

Dalam warisan tunggal, terdapat satu kelas super dan satu sub kelas. Jika Kelas A adalah kelas Super dan Kelas B adalah kelas sub, semua sifat dan kaedah Kelas A boleh diakses oleh Kelas B. Hanya ada satu tahap; Oleh itu, ia dipanggil sebagai warisan peringkat tunggal.

Warisan pelbagai peringkat

Dalam warisan pelbagai peringkat terdapat tiga peringkat kelas. Kelas pertengahan mewarisi dari kelas super. Kelas sub mewarisi dari kelas pertengahan. Sekiranya terdapat tiga kelas sebagai A, B dan C dan A adalah kelas super dan B adalah kelas pertengahan. Kemudian B mewarisi dari A dan C yang diwarisi dari B, ia adalah warisan pelbagai peringkat.

Warisan berganda

Dalam pelbagai warisan, terdapat banyak kelas super dan satu sub kelas. Sekiranya terdapat tiga kelas super yang dipanggil A, B, C dan D adalah kelas sub, maka Kelas D boleh mewarisi dari A, B dan C. Warisan berganda disokong dalam bahasa pengaturcaraan c++. Ia tidak disokong dalam bahasa pengaturcaraan seperti Java atau C#. Antara muka digunakan untuk melaksanakan pelbagai warisan dalam bahasa -bahasa ini.

Warisan hierarki

Sekiranya terdapat kelas yang dipanggil sebagai kelas super dan b, c adalah kelas sub, kelas sub -sub boleh mewarisi sifat dan kaedah kelas a. Jenis warisan semacam itu dikenali sebagai warisan hierarki.

Warisan hibrid

Terdapat satu lagi jenis warisan khas yang dikenali sebagai warisan hibrid. Ia adalah gabungan pelbagai peringkat dan pelbagai warisan. Jika A, B, C dan D adalah kelas dan B mewarisi dari A dan D adalah mewarisi dari kedua -dua B dan C, maka itu adalah warisan hibrid.

Apakah persamaan antara polimorfisme dan warisan di OOP?

  • Kedua -duanya adalah konsep pengaturcaraan berorientasikan objek.

Apakah perbezaan antara polimorfisme dan warisan di OOP?

Polimorfisme vs warisan di OOP

Polimorfisme adalah keupayaan objek untuk berkelakuan dalam pelbagai cara. Warisan adalah untuk membuat kelas baru menggunakan sifat dan kaedah kelas yang ada.
 Penggunaan
Polimorfisme digunakan untuk objek untuk memanggil bentuk kaedah pada masa penyusunan dan runtime. Warisan digunakan untuk kebolehgunaan semula kod.
Pelaksanaan
Polimorfisme dilaksanakan dalam kaedah. Warisan dilaksanakan di kelas.
 Kategori
Polimorfisme boleh dibahagikan kepada kelebihan beban dan mengatasi. Warisan boleh dibahagikan kepada tahap tunggal, pelbagai peringkat, hierarki, hibrid, dan pelbagai warisan.

Ringkasan - Polimorfisme vs warisan di OOP 

Polimorfisme dan warisan adalah konsep utama dalam pengaturcaraan berorientasikan objek. Perbezaan antara polimorfisme dan warisan di OOP ialah polimorfisme adalah antara muka yang sama dengan pelbagai bentuk dan warisan adalah untuk membuat kelas baru menggunakan sifat dan kaedah kelas yang ada. Kedua -dua konsep digunakan secara meluas dalam pembangunan perisian.

Muat turun polimorfisme pdf vs warisan di OOP

Anda boleh memuat turun versi PDF artikel ini dan menggunakannya untuk tujuan luar talian mengikut nota petikan. Sila muat turun versi pdf di sini perbezaan antara polimorfisme dan warisan di OOP

Rujukan:
  1. 8.3 Apa itu Warisan di Java | Kuliah | Tutorial, Telusko Learning, 15 Mei 2014. Terdapat di sini  
  2. Polimorfisme dalam Tutorial Java, Telusko Learning, 15 Mei 2014. Terdapat di sini