Pemrograman Karakteristik Warisan, Jenis, Contoh
- 1013
- 289
- Herbert Fritsch
Itu warisan dalam pemrograman Berorientasi pada objek Ini adalah cara mengatur objek dalam hierarki dari yang paling umum hingga yang paling spesifik. Ini adalah gadget yang digunakan untuk memperluas kelas di kelas lain, mempertahankan eksekusi analog.
Di sebagian besar kelas bahasa berorientasi kelas berdasarkan objek berbasis kelas, objek yang dibuat melalui pewarisan, yang disebut objek anak, memperoleh semua sifat dan perilaku objek induk.
Demonstrasi sederhana warisan dalam orientasi objek. Sumber: Pluke / CC0 Creative Commons CC0 1.0 Domain Publik UniversalOleh karena itu, itu adalah kualitas yang mewakili hubungan antara kelas yang berbeda. Warisan memungkinkan satu kelas memiliki perilaku yang sama dengan kelas lain dan memperluas atau menyesuaikan perilaku itu untuk memberikan tindakan khusus untuk kebutuhan spesifik.
Warisan dapat membantu mewakili objek yang memiliki beberapa perbedaan dan beberapa kesamaan dalam cara mereka bekerja. Semua fungsionalitas yang dimiliki objek dapat dimasukkan ke dalam kelas dasar, dan kemudian mendefinisikan satu atau lebih subkelas dengan fungsionalitas pribadi mereka sendiri.
[TOC]
Karakteristik warisan
Warisan adalah salah satu karakteristik utama pemrograman berorientasi objek, yang berfungsi untuk mendefinisikan kelas baru dari kelas yang ada.
Yaitu kelas baru dari kelas dasar yang ada dapat diturunkan, menambahkan fitur baru. Anda tidak perlu menulis dari awal. Oleh karena itu, warisan menyediakan cara untuk dengan mudah menggunakan kembali kode yang ada.
Jika Anda sudah memiliki kelas yang melakukan hampir semua yang Anda inginkan, Anda dapat membuat subkelas di mana bagian perilaku Anda dibatalkan sebagian, atau mungkin beberapa fungsi baru ditambahkan.
Kelas turunan mewarisi semua metode kelas dasar, kecuali yang berikut:
Dapat melayani Anda: Komputer Analog: Karakteristik, Komponen, Jenis- Pembangun, kapal perusak, dan pembangun kelas salinan.
- Operator Kelas Dasar Kelebihan.
- Fungsi Ramah Kelas Dasar.
Hirarki
Seperti pohon keluarga, warisan berfungsi untuk membentuk hierarki kelas. Penting untuk dicatat bahwa atribut yang ditentukan untuk kelas dasar akan secara otomatis hadir di kelas yang diturunkan. Selain itu, metode untuk kelas dasar akan bekerja untuk turunannya.
Dikatakan bahwa kelas akan menjadi subkelas dari kelas yang mewarisi. Di sisi lain, kelas ini akan menjadi superclass Anda. Itu dapat merujuk ke kelas yang paling umum sebagai kelas dasar, karena berada di dasar hierarki.
Polimorfisme
Warisan sangat populer dalam beberapa bahasa dengan tipe statis, karena memungkinkan programmer untuk menghindari beberapa pembatasan tipe statis.
Objek yang mewarisi dari objek lain dianggap sebagai subtipe dari objek itu. Contohnya bisa menjadi objek "instruktur" dan "pelajar", yang masing -masing mewarisi "orang".
Jika instruktur dan siswa adalah orang yang sama, Anda dapat menulis fungsi yang menerima tipe orang sebagai parameter dan yang berfungsi dalam objek instruktur dan siswa, karena keduanya adalah ahli waris orang.
Jenis warisan
Warisan unik
Saat kelas turunan mewarisi sifat dan perilaku kelas tunggal. Yaitu, satu kelas meluas ke kelas tunggal lain.
Warisan multilevel
Ini mengacu pada gadget di mana Anda dapat mewarisi dari kelas yang diturunkan, menjadikan kelas turunan ini kelas dasar untuk kelas baru. Yaitu hasilnya ketika kelas turunan dibuat dari kelas turunan lainnya.
Dapat melayani Anda: von neumann arsitektur: asal, model, cara kerjanyaWarisan hierarkis
Dalam warisan ini, banyak subclass mewarisi dari satu kelas. Artinya, itu terjadi ketika satu kelas dasar diwarisi oleh lebih dari satu kelas turunan.
Warisan Hibrida
Ini adalah warisan yang dihasilkan ketika salah satu dari tiga warisan sebelumnya (unik, hierarkis dan bertingkat) digabungkan).
Warisan berganda
Sesuai dengan figur warisan saat kelas mewarisi lebih dari satu superclass. Ketidaknyamanan yang ada dengan jenis warisan ini adalah bahwa kelas yang diturunkan harus memproses ketergantungan yang dimilikinya dengan dua kelas dasar.
Di sisi lain, jenis warisan ini memungkinkan pemrogram untuk mendirikan kelas yang menggabungkan aspek -aspek dari beberapa kelas dan hierarki yang sesuai.
Jenis warisan dari kelas dasar
Warisan publik
Ketika kelas berasal dari kelas pangkalan publik, anggota publik kelas dasar menjadi anggota publik dari kelas yang diturunkan dan anggota yang dilindungi dari kelas pangkalan menjadi anggota yang dilindungi dari kelas yang diturunkan.
Anggota swasta superclass tidak akan pernah terjangkau langsung dari kelas yang diturunkan, tetapi Anda dapat memiliki akses ke mereka melalui panggilan yang dilakukan kepada anggota umum dan dilindungi dari kelas dasar.
Warisan yang dilindungi
Ketika suatu kelas dibuat yang mewarisi dari superclass yang dilindungi, baik anggota publik maupun yang dilindungi dari superclass ini akan menjadi anggota yang dilindungi dari kelas yang diturunkan.
Warisan pribadi
Ketika subclass dibuat dari superclass pribadi, anggota yang publik dan terlindungi dari superclass ini akan menjadi anggota pribadi subkelas.
Contoh
Contoh dalam Python
Untuk menunjukkan bagaimana prinsip warisan bekerja, robot atau kelas robot yang lebih baik akan diambil dalam bahasa pemrograman Python. Untuk ini, kelas yang disebut RobotMedic akan ditentukan (Dokterrobot), yang berasal dari robot superclass.
Dapat melayani Anda: pabrik industri PeruJika kode kelas Robotmed diamati, dapat dilihat bahwa tidak ada atribut atau metode yang didefinisikan dalam kelas ini.
Karena kelas robot adalah subkelas robot, mewarisi metode __init__ dan sayhi dalam kasus ini. Mewarisi metode ini berarti bahwa mereka dapat digunakan seolah -olah mereka telah didefinisikan di kelas robotmed.
Saat instance robot dibuat, fungsi __init__ juga akan membuat atribut nama. Metode Say_HI dapat diterapkan pada objek robotmedic "Y", seperti yang dapat dilihat pada hasil kode sebelumnya.
Contoh dalam c++
Suatu kelas dapat mewarisi lebih dari satu kelas, yang berarti dapat mewarisi data dan fungsi beberapa superclass. Untuk mendefinisikan kelas turunan, daftar derivasi kelas digunakan untuk menentukan kelas dasar.
Daftar rujukan kelas di C ++ nama satu atau lebih kelas dasar dan memiliki cara berikut: Kelas Derced-Class: Access-Pengguna Kelas dasar, di mana Access-Pengguna adalah publik, Terlindung salah satu Pribadi, Dan Kelas dasar Itu adalah nama kelas yang ditentukan sebelumnya. Jika tidak digunakan Access-Pengguna, Telah diambil Pribadi bawaan.
Superclass "bentuk" dan kelas turunannya "persegi panjang" dapat dianggap sebagai berikut:
Ketika kode sebelumnya dikompilasi dan dieksekusi, hasil berikut terjadi: "Total Area: 35".
Referensi
- Dave Braunschweig (2020). Warisan dan polimorfisme. Komunitas Abus. Diambil dari: tekan.Sebuah bus.Masyarakat.
- Kursus Python (2020). Warisan. Diambil dari: kursus python.UE.
- Mentor Data (2020). R warisan. Diambil dari: datamentor.Io.
- Tutorials Point (2020). C ++ warisan. Diambil dari: TutorialSpoint.com.
- Informasi Net (2020). Berbagai jenis warisan. Diambil dari: informasi net.com.
- « Sejarah Bilangan Nyata, Contoh, Properti, Operasi
- David Ausubel Biografi, Teori, Kontribusi, Karya »