Pewarisan Dasar
Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan Python di Coddy. Pelajaran 17 dari 64.
Pewarisan memungkinkan sebuah class mewarisi atribut dan method dari class lain, sehingga menciptakan hubungan induk-anak.
Berikut contoh parent class:
class Animal:
def __init__(self, name):
self.name = name
def info(self):
print(f"I am {self.name}, an animal")Buat child class yang mewarisi parent:
class Dog(Animal):
pass # Mewarisi semuanya dari AnimalSintaks class Dog(Animal): berarti Dog mewarisi Animal. Letakkan nama class induk di dalam tanda kurung.
Buat object dari kedua class:
generic_animal = Animal("Creature")
buddy = Dog("Buddy")Gunakan method yang diwariskan:
generic_animal.info()
buddy.info()Keluaran:
I am Creature, an animal
I am Buddy, an animalMeskipun Dog tidak mendefinisikan __init__ atau info, Dog otomatis mendapatkannya dari Animal.
Kamu bisa menambahkan method baru ke class turunan:
class Dog(Animal):
def bark(self):
print(f"{self.name} says Woof!")
buddy = Dog("Buddy")
buddy.info() # method yang diwarisi
buddy.bark() # method baruKeluaran:
I am Buddy, an animal
Buddy says Woof!Poin Penting: Child mewarisi semua atribut dan method dari Parent. Gunakan sintaks class Child(Parent): untuk membuat pewarisan. Ini membantumu menggunakan kembali kode dan membuat hierarki class yang logis.
Tantangan
Sedangvehicle.py: Berisi class indukVehiclecar.py: Berisi classCaryang mewarisiVehicledriver.py: File utama untuk menguji implementasimu
Setiap file berisi komentar TODO terperinci untuk memandu kamu dalam implementasi. Kamu perlu:
- Melengkapi class
Vehicledengan atribut make dan model - Menerapkan pewarisan class dengan benar di class
Car - Menyiapkan pernyataan import yang benar di antara file
- Membuat dan menguji object di file driver
Ikuti komentar TODO dengan saksama karena komentar tersebut memberikan panduan langkah demi langkah untuk mendapatkan solusi.
Coba sendiri
# TODO: Impor class Vehicle dari vehicle.py
# TODO: Impor class Car dari car.py
# TODO: Buat object Vehicle dengan make "Toyota" dan model "Corolla"
vehicle = None
# TODO: Buat object Car dengan make "Honda" dan model "Civic"
car = None
# TODO: Panggil method display_info() pada object vehicle
# Output yang diharapkan: "Vehicle: Toyota Corolla"
# TODO: Panggil method display_info() pada object car
# Output yang diharapkan: "Vehicle: Honda Civic"
# Catatan: Car mewarisi display_info dari Vehicle tanpa perubahanPelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pemrograman Berorientasi Objek
1Dasar-Dasar OOP
File EksternalPengantar OOPclass vs objectParameter selfmethodAtributMethod Konstruktor (__init__)Rangkuman: Kalkulator Sederhana4Pewarisan
Pewarisan DasarFungsi super()Penimpaan MethodPewarisan BergandaUrutan Resolusi MethodRingkasan: Hierarki Karyawan5Polimorfisme
Meninjau Ulang Method OverridingDuck Typingclass dan method AbstrakDesain InterfaceRingkasan: Kalkulator Bentuk8Konsep OOP Lanjutan
Komposisi vs PewarisanMixinsMetode Statis dan Metode ClassDecorator ClassPengelola Konteks11Pola Desain Bagian 2
Pola PerintahPola AdapterPola DecoratorPola Template MethodPola StatePola Composite3Property class
Variabel instance vs variabel classDekorator propertyAtribut privatRangkuman: Pengelola Rekening Bank6Enkapsulasi
Anggota Public, Protected, PrivateModifier AksesPenyembunyian InformasiDecorator Property Tingkat LanjutUlasan: Sistem Catatan Siswa12Proyek: Manajemen Perpustakaan
Ikhtisar Proyekclass Buku dan PenggunaSistem PeminjamanFitur PencarianAntarmuka AdminPengujian dan IntegrasiLatihan sendiri: Compiler Python online