Kelas #
Pengertian #
Kelas dalam Python adalah cetak biru untuk membuat objek (instance). Kelas mengizinkan pengorganisasian data (melalui atribut) dan fungsi (melalui metode) ke dalam satu kesatuan yang terstruktur. Ini adalah konsep utama dalam pemrograman berorientasi objek (OOP).
Sintaks #
Untuk mendefinisikan kelas di Python, digunakan kata kunci class
diikuti dengan nama kelas dan titik dua :
. Nama kelas biasanya menggunakan huruf besar pada awal kata (PascalCase).
class NamaKelas:
# Konstruktor
def __init__(self, parameter1, parameter2, ...):
self.atribut1 = parameter1
self.atribut2 = parameter2
# Atribut lainnya
# Metode
def metode1(self):
# Implementasi metode
pass
def metode2(self, parameter):
# Implementasi metode
pass
Penerapan #
Kelas Sederhana #
class Mahasiswa:
# Konstruktor
def __init__(self, nama, umur, jurusan):
self.nama = nama
self.umur = umur
self.jurusan = jurusan
# Metode untuk menampilkan informasi mahasiswa
def tampilkan_info(self):
print(f"Nama: {self.nama}, Umur: {self.umur}, Jurusan: {self.jurusan}")
# Membuat objek dari kelas Mahasiswa
mahasiswa1 = Mahasiswa("Andi", 20, "Informatika")
mahasiswa2 = Mahasiswa("Budi", 22, "Sistem Informasi")
# Menggunakan metode tampilkan_info
mahasiswa1.tampilkan_info() # Output: Nama: Andi, Umur: 20, Jurusan: Informatika
mahasiswa2.tampilkan_info() # Output: Nama: Budi, Umur: 22, Jurusan: Sistem Informasi
Metode dan Atribut #
class Mobil:
# Atribut kelas
jumlah_mobil = 0
def __init__(self, merek, model, tahun):
self.merek = merek
self.model = model
self.tahun = tahun
Mobil.jumlah_mobil += 1
def tampilkan_info(self):
print(f"Merek: {self.merek}, Model: {self.model}, Tahun: {self.tahun}")
# Metode kelas
@classmethod
def tampilkan_jumlah_mobil(cls):
print(f"Jumlah mobil: {cls.jumlah_mobil}")
# Metode statis
@staticmethod
def info_umum():
print("Mobil adalah kendaraan bermotor beroda empat yang digunakan untuk transportasi.")
# Membuat objek dari kelas Mobil
mobil1 = Mobil("Toyota", "Corolla", 2020)
mobil2 = Mobil("Honda", "Civic", 2021)
# Menggunakan metode tampilkan_info
mobil1.tampilkan_info() # Output: Merek: Toyota, Model: Corolla, Tahun: 2020
mobil2.tampilkan_info() # Output: Merek: Honda, Model: Civic, Tahun: 2021
# Menggunakan metode kelas
mobil.tampilkan_jumlah_mobil() # Output: Jumlah mobil: 2
# Menggunakan metode statis
mobil.info_umum() # Output: Mobil adalah kendaraan bermotor beroda empat yang digunakan untuk transportasi.
Penjelasan Tambahan #
- Konstruktor (
__init__
): Metode khusus yang dipanggil ketika sebuah objek dari kelas dibuat. Ini digunakan untuk menginisialisasi atribut objek. - Atribut: Variabel yang terikat ke objek, bisa berupa atribut instance (didefinisikan di dalam
__init__
) atau atribut kelas (didefinisikan langsung di dalam kelas). - Metode: Fungsi yang didefinisikan di dalam kelas dan dioperasikan pada objek dari kelas tersebut.
- Metode Kelas (
@classmethod
): Metode yang diikat ke kelas dan dapat mengakses atribut serta metode kelas. - Metode Statis (
@staticmethod
): Metode yang tidak bergantung pada instance atau kelas dan biasanya digunakan untuk tugas yang tidak membutuhkan akses ke atribut atau metode kelas.
Kesimpulan #
Dengan menggunakan kelas, kita dapat membuat struktur kode yang lebih terorganisir, modular, dan mudah dipelihara serta dikembangkan.