Mengenai ketiga jenis pewarisan , overriding dan polimorfisme , pewarisan adalah yang paling sering kita gunakan sehari-hari. Ketika kita membutuhkan banyak subkelas serupa, jika kita mendefinisikannya satu per satu, maka akan membuang banyak ruang dan waktu. kita hanya perlu mendefinisikan kelas induk, yaitu mendefinisikan templat, dan kemudian mewarisi semua atribut dan perilaku kelas induk. Pabrik memproduksi kelas tertentu secara massal Saat membuat bagian mekanis, tidak perlu menggambar gambar untuk setiap produksi, tetapi memproduksi massal sesuai gambar. Kami juga mengadopsi ide ini saat menggunakan pewarisan dalam program, tetapi saat kami ingin mewarisi suatu hal tertentu untuk asesorisnya, kita bisa menggunakan metode penulisan ulang, sedangkan polimorfisme menggabungkan pewarisan dan penulisan ulang. Mari kita pelajari secara bergantian.
Yang dimaksud dengan warisan adalah anak laki-laki mewarisi ayah.
Mari belajar tentang warisan berdasarkan contoh.
classBase:#Definisikan kelas induk bernama Base def__init__(self,name,age,id):self.name=nameself.age=ageself.id=idprint('Mewarisi kelas Base')print('Nama saya :',self .name)print('Umur saya:',self.umur)print('Nomor Siswa Saya:' ,self.id)defgoto_school(self):print(self.name,'Menggunakan metode goto_school di kelas Base untuk pergi ke sekolah')classStudent(Base): #Saat mewarisi kelas induk, semua metode di kelas induk akan diwariskan passxiaoming= Student('Xiaoming',20,1001)xiaoming.goto_school()
Outputnya adalah:
Mewarisi kelas Dasar. Nama saya: Xiao Ming. Umur saya: 20. Nomor siswa saya: 1001. Xiao Ming menggunakan metode goto_school di kelas Dasar untuk pergi ke sekolah.
Mari kita analisis contoh ini. Pertama, kita mendefinisikan sebuah kelas bernama Base di atas. Kelas ini memberi kita metode konstruktor, termasuk nama, nama depan dan nomor siswa, dan kemudian juga menyediakan metode goto_school() di bawah, yang mewarisi yang di atas Kelas dasar, lalu kita langsung memanggil kelas Siswa. Melalui hasil keluaran, kita dapat melihat bahwa meskipun tidak ada apa pun di kelas Siswa, serangkaian operasi masih dapat dilakukan lalu akhirnya Dalam satu baris, kita juga memanggil metode di Base, dan masih bisa dipanggil dengan sukses.