Polimorfisme
Jelajahi cara polimorfisme memungkinkan kode yang fleksibel dan dinamis
Polimorfisme adalah pelajaran Learn AI with Python gratis di CoddyKit. Ini adalah pelajaran 4 dari 6. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Learn AI with Python, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Learn AI with Python mencakup 6 pelajaran total.
Pengantar Polimorfisme
Pengantar Polimorfisme
Polimorfisme adalah konsep inti dalam Pemrograman Berorientasi Objek (OOP) yang memungkinkan objek dari kelas yang berbeda diperlakukan sebagai objek dari kelas induk yang sama. Polimorfisme memberikan fleksibilitas dan keterpakaian ulang pada kode.
Dalam pelajaran ini, Anda akan mempelajari cara menerapkan polimorfisme dalam Python menggunakan metode dan kelas.

Apa Itu Polimorfisme?
Apa Itu Polimorfisme?
Polimorfisme memungkinkan metode di kelas yang berbeda menggunakan nama yang sama, tetapi berperilaku berbeda. Hal ini membuat kode lebih fleksibel dan lebih mudah diperluas.
# Defining a superclass
class Animal:
# Method in the superclass
def speak(self):
print("Animal speaks") # Generic message for all animals
# Defining a subclass that overrides the speak method
class Dog(Animal):
def speak(self):
print("Dog barks") # Specific behavior for DogPolimorfisme dengan Metode
Polimorfisme dengan Metode
Metode dengan nama yang sama pada kelas yang berbeda dapat menyediakan implementasi yang berbeda.
# Another subclass with its own implementation of the speak method
class Cat(Animal):
def speak(self):
print("Cat meows") # Specific behavior for Cat
# Function demonstrating polymorphism
# It can accept objects of any subclass of Animal
def animal_sound(animal):
animal.speak() # Calls the appropriate speak method based on the object type
# Creating objects of Dog and Cat
dog = Dog()
cat = Cat()
# Calling the function with different objects
animal_sound(dog) # Outputs: Dog barks
animal_sound(cat) # Outputs: Cat meowsContoh Polimorfisme dengan Metode
Polimorfisme dengan Metode
Metode dengan nama yang sama pada kelas yang berbeda dapat menyediakan implementasi yang berbeda.
# Another subclass with its own implementation of the speak method
class Cat(Animal):
def speak(self):
print("Cat meows") # Specific behavior for Cat
# Function demonstrating polymorphism
# It can accept objects of any subclass of Animal
def animal_sound(animal):
animal.speak() # Calls the appropriate speak method based on the object type
# Creating objects of Dog and Cat
dog = Dog()
cat = Cat()
# Calling the function with different objects
animal_sound(dog) # Outputs: Dog barks
animal_sound(cat) # Outputs: Cat meowsPolimorfisme dengan Fungsi
Polimorfisme dengan Fungsi
Polimorfisme memungkinkan fungsi yang sama beroperasi pada objek dengan tipe yang berbeda.
# Defining two unrelated classes
class Bird:
def fly(self):
print("Bird flies") # Behavior specific to birds
class Plane:
def fly(self):
print("Plane flies") # Behavior specific to planes
# Function demonstrating polymorphism
# It can accept objects of both Bird and Plane
def flying_object(obj):
obj.fly() # Calls the appropriate fly method based on the object type
# Creating objects of Bird and Plane
bird = Bird()
plane = Plane()
# Calling the function with different objects
flying_object(bird) # Outputs: Bird flies
flying_object(plane) # Outputs: Plane fliesPolimorfisme dengan Pewarisan
Polimorfisme dengan Pewarisan
Polimorfisme sering dicapai melalui pewarisan, yaitu ketika subkelas menimpa metode dari kelas induk.
# Superclass representing a generic vehicle
class Vehicle:
def start(self):
print("Vehicle starts") # Generic behavior for all vehicles
# Subclass representing a specific type of vehicle
class Car(Vehicle):
def start(self):
print("Car starts") # Specific behavior for cars
# Subclass representing another specific type of vehicle
class Bike(Vehicle):
def start(self):
print("Bike starts") # Specific behavior for bikes
# Function demonstrating polymorphism
# It can accept objects of any subclass of Vehicle
def start_vehicle(vehicle):
vehicle.start() # Calls the appropriate start method based on the object type
# Creating objects of Car and Bike
car = Car()
bike = Bike()
# Calling the function with different objects
start_vehicle(car) # Outputs: Car starts
start_vehicle(bike) # Outputs: Bike startsKeunggulan Polimorfisme
Keunggulan Polimorfisme
Polimorfisme menawarkan beberapa manfaat:
- Keterpakaian ulang dan fleksibilitas kode.
- Keterbacaan dan pengorganisasian kode yang lebih baik.
- Mendorong penggunaan antarmuka yang sama.
Contoh di Dunia Nyata
Contoh di Dunia Nyata
Berikut adalah contoh polimorfisme di dunia nyata.
# Real-world example of polymorphism
class Developer:
def work(self):
print("Writing code") # Specific task for developers
class Designer:
def work(self):
print("Designing user interfaces") # Specific task for designers
# Function demonstrating polymorphism
# It can accept objects of both Developer and Designer
def workday(employee):
employee.work() # Calls the appropriate work method based on the object type
# Creating objects of Developer and Designer
developer = Developer()
designer = Designer()
# Calling the function with different objects
workday(developer) # Outputs: Writing code
workday(designer) # Outputs: Designing user interfacesKesalahan Umum pada Polimorfisme
Kesalahan Umum pada Polimorfisme
Berikut adalah beberapa kesalahan yang perlu dihindari:
- Lupa mengganti metode pada subkelas ketika diperlukan.
- Keliru memahami urutan resolusi metode (MRO) dalam pewarisan berganda.
- Menggunakan polimorfisme secara tidak perlu untuk tugas sederhana.
Apa yang Telah Kita Pelajari?
Apa yang Telah Kita Pelajari?
Dalam pelajaran ini, Anda telah mempelajari:
- Apa itu polimorfisme dan cara kerjanya dalam Python.
- Cara menerapkan polimorfisme dengan metode dan pewarisan.
- Keunggulan penggunaan polimorfisme dalam OOP.
Bagus sekali! Mari lanjutkan ke topik berikutnya.

Pertanyaan yang Sering Diajukan
Apakah pelajaran “Polimorfisme” gratis?
Ya — teks lengkap “Polimorfisme” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Learn AI with Python, upgrade ke CoddyKit PRO. Kursus Learn AI with Python mencakup 6 pelajaran total.
Apa yang akan aku pelajari di “Polimorfisme”?
Jelajahi cara polimorfisme memungkinkan kode yang fleksibel dan dinamis Kamu berlatih Learn AI with Python dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Learn AI with Python?
Tidak diperlukan pengalaman sebelumnya. Learn AI with Python di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 6.
Berapa lama pelajaran “Polimorfisme” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Learn AI with Python ini?
Ya. Setiap pelajaran Learn AI with Python menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Kelas dan Objek
- Atribut dan Metode
- Pewarisan
- Polimorfisme
- Enkapsulasi dan Abstraksi
- Metode Ajaib (__str__, __repr__, dan lainnya)