Menu
CoddyTech

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 Animal

Sintaks 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 animal

Meskipun 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 baru

Keluaran:

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.

challenge icon

Tantangan

Sedang
  • vehicle.py: Berisi class induk Vehicle
  • car.py: Berisi class Car yang mewarisi Vehicle
  • driver.py: File utama untuk menguji implementasimu

Setiap file berisi komentar TODO terperinci untuk memandu kamu dalam implementasi. Kamu perlu:

  • Melengkapi class Vehicle dengan 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 perubahan
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Pemrograman Berorientasi Objek

Latihan sendiri: Compiler Python online