Pelajaran 7 dari 12
7. Pemrograman Berorientasi Objek (OOP)
Pemrograman Berorientasi Objek (OOP) adalah paradigma pemrograman yang menggunakan konsep "objek" untuk mendesain aplikasi.
Konsep Dasar OOP
- Class: Cetak biru untuk membuat objek
- Object: Instance dari class
- Attribute: Data yang dimiliki objek
- Method: Fungsi yang dimiliki objek
Membuat Class dan Object
# Membuat class
class Mobil:
# Constructor method
def __init__(self, merek, tahun):
self.merek = merek # Attribute
self.tahun = tahun
# Method
def info(self):
print(f"Mobil {self.merek} tahun {self.tahun}")
# Membuat object
mobil1 = Mobil("Toyota", 2020)
mobil1.info() # Output: Mobil Toyota tahun 2020
Inheritance (Pewarisan)
# Class induk
class Kendaraan:
def __init__(self, jenis):
self.jenis = jenis
def info_jenis(self):
print(f"Ini adalah kendaraan {self.jenis}")
# Class anak
class Motor(Kendaraan):
def __init__(self, jenis, cc):
super().__init__(jenis)
self.cc = cc
def info(self):
print(f"Motor {self.jenis} dengan CC {self.cc}")
motor1 = Motor("Sport", 250)
motor1.info_jenis() # Output: Ini adalah kendaraan Sport
motor1.info() # Output: Motor Sport dengan CC 250
Latihan:
Buat class Mahasiswa dengan attribute NIM, nama, dan IPK. Tambahkan method untuk menampilkan info mahasiswa dan mengecek apakah IPK-nya cumlaude (≥ 3.5).
# Solusi contoh
class Mahasiswa:
def __init__(self, nim, nama, ipk):
self.nim = nim
self.nama = nama
self.ipk = ipk
def info(self):
print(f"{self.nim} - {self.nama} - IPK: {self.ipk}")
def is_cumlaude(self):
return self.ipk >= 3.5
# Contoh penggunaan
mhs1 = Mahasiswa("12345", "Budi", 3.75)
mhs1.info()
print("Cumlaude?", mhs1.is_cumlaude()) # Output: True