Class dalam Python
Pemrograman Python menyediakan berbagai cara untuk menyusun program agar lebih teratur. Salah satu kemampuan penting yang perlu dipahami adalah class. Class digunakan sebagai dasar untuk membuat objek yang memiliki data dan perilaku tertentu.
Sebelum mempelajari materi tentang Class dalam Python, terlebih dahulu pelajari materi tentang: Exception dan Penanganan Kesalahan dalam Python, Penanganan Exception dalam Python, dan Exception Buatan Sendiri dalam Python.
Sebelum mempelajari materi tentang Class dalam Python, terlebih dahulu pelajari materi tentang: Exception dan Penanganan Kesalahan dalam Python, Penanganan Exception dalam Python, dan Exception Buatan Sendiri dalam Python.
Konsep class sangat berkaitan dengan pemrograman berorientasi objek. Melalui class, data dapat dikelompokkan bersama fungsi yang digunakan untuk mengolah data tersebut. Dengan pendekatan ini, program yang memiliki banyak data dan fungsi dapat disusun secara lebih terstruktur. Pemahaman tentang class menjadi dasar untuk mempelajari objek, atribut, metode, konstruktor, pewarisan, dan berbagai konsep pemrograman berorientasi objek lainnya.
Class tersebut dapat memiliki:
Contoh sederhana:
class Siswa:
pass
Kode tersebut membuat class bernama `Siswa`. Kata kunci `class` digunakan untuk mendefinisikan class.
class NamaClass:
# isi class
Contoh:
class Siswa:
pass
Nama class biasanya ditulis dengan huruf awal kapital agar mudah dibedakan dari variabel dan fungsi.
Contoh:
class Siswa:
pass
siswa1 = Siswa()
Pada kode tersebut, `Siswa` merupakan class dan `siswa1` merupakan objek. Objek dibuat dengan menuliskan nama class diikuti tanda kurung.
class Siswa:
pass
siswa1 = Siswa()
siswa2 = Siswa()
siswa3 = Siswa()
Ketiga objek tersebut berasal dari class yang sama. Meskipun berasal dari class yang sama, setiap objek dapat memiliki data yang berbeda.
Contoh:
class Siswa:
pass
siswa1 = Siswa()
siswa1.nama = "Andi"
siswa1.kelas = "10A"
siswa1.umur = 16
Pada contoh tersebut terdapat tiga atribut:
Atribut tersebut dapat diakses melalui objek.
print(siswa1.nama)
print(siswa1.kelas)
print(siswa1.umur)
Contoh:
class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
Objek dapat dibuat dengan memberikan nilai yang diperlukan.
siswa1 = Siswa("Andi", "10A")
Nilai tersebut disimpan sebagai atribut objek.
Contoh:
class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
`self.nama` merupakan atribut `nama` milik objek tersebut.
Jika dibuat dua objek:
siswa1 = Siswa("Andi", "10A")
siswa2 = Siswa("Budi", "10B")
masing-masing objek memiliki nilai atribut sendiri.
class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
siswa1 = Siswa("Andi", "10A")
print(siswa1.nama)
print(siswa1.kelas)
Hasil:
Andi
10A
class Siswa:
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
print(siswa1.nama)
siswa1.nama = "Budi"
print(siswa1.nama)
Nilai atribut `nama` berubah dari `"Andi"` menjadi `"Budi"`.
class Siswa:
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
siswa1.kelas = "10A"
siswa1.umur = 16
Sekarang objek memiliki atribut:
Namun, pendekatan yang lebih teratur adalah mendefinisikan atribut utama di dalam `__init__()`.
Contoh:
class Siswa:
def tampilkan_nama(self):
print("Nama siswa adalah Andi")
Metode dapat dipanggil melalui objek:
siswa1 = Siswa()
siswa1.tampilkan_nama()
class Siswa:
def __init__(self, nama):
self.nama = nama
def tampilkan_nama(self):
print("Nama:", self.nama)
Penggunaan:
siswa1 = Siswa("Andi")
siswa1.tampilkan_nama()
Hasil:
Nama: Andi
class Siswa:
def __init__(self, nama):
self.nama = nama
def sapa(self, pesan):
print(self.nama, pesan)
Penggunaan:
siswa1 = Siswa("Andi")
siswa1.sapa("selamat belajar")
Hasil:
Andi selamat belajar
class Persegi:
def __init__(self, sisi):
self.sisi = sisi
def luas(self):
return self.sisi * self.sisi
Penggunaan:
persegi1 = Persegi(5)
hasil = persegi1.luas()
print(hasil)
Hasil:
25
class Siswa:
def __init__(self, nama, kelas, umur):
self.nama = nama
self.kelas = kelas
self.umur = umur
Objek:
siswa1 = Siswa("Andi", "10A", 16)
Data dapat ditampilkan:
print(siswa1.nama)
print(siswa1.kelas)
print(siswa1.umur)
class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
def tampilkan_data(self):
print("Nama:", self.nama)
print("Kelas:", self.kelas)
def belajar(self):
print(self.nama, "sedang belajar")
Penggunaan:
siswa1 = Siswa("Andi", "10A")
siswa1.tampilkan_data()
siswa1.belajar()
Contoh:
class Siswa:
sekolah = "SMA Contoh"
def __init__(self, nama):
self.nama = nama
Atribut `sekolah` merupakan atribut class. Objek dapat mengaksesnya:
siswa1 = Siswa("Andi")
print(siswa1.sekolah)
self.nama = nama
Nilainya dapat berbeda untuk setiap objek. Atribut class ditulis langsung di dalam class:
sekolah = "SMA Contoh"
Nilainya dapat digunakan oleh objek yang berasal dari class tersebut.
class Siswa:
sekolah = "SMA Contoh"
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
siswa2 = Siswa("Budi")
print(siswa1.sekolah)
print(siswa2.sekolah)
Kedua objek dapat mengakses atribut class `sekolah`.
class Siswa:
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
siswa1.nama = "Budi"
print(siswa1.nama)
Hasilnya:
Budi
class Siswa:
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
del siswa1.nama
Setelah atribut dihapus, `siswa1.nama` tidak lagi tersedia.
class Siswa:
pass
siswa1 = Siswa()
del siswa1
Setelah itu, nama `siswa1` tidak lagi mengacu pada objek tersebut.
class Siswa:
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
print(hasattr(siswa1, "nama"))
print(hasattr(siswa1, "umur"))
Hasil:
True
False
class Siswa:
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
print(getattr(siswa1, "nama"))
Hasil:
Andi
class Siswa:
pass
siswa1 = Siswa()
setattr(siswa1, "nama", "Andi")
print(siswa1.nama)
Hasil:
Andi
class Siswa:
def __init__(self):
self.nama = "Andi"
siswa1 = Siswa()
delattr(siswa1, "nama")
Atribut `nama` tidak lagi tersedia pada objek tersebut.
Contoh:
class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
def __str__(self):
return f"{self.nama} - {self.kelas}"
Penggunaan:
siswa1 = Siswa("Andi", "10A")
print(siswa1)
Hasil:
Andi - 10A
Metode **init**() dan **str**()
Kedua metode tersebut memiliki fungsi yang berbeda.
Contoh:
class Buku:
def __init__(self, judul, penulis):
self.judul = judul
self.penulis = penulis
def __str__(self):
return f"{self.judul} - {self.penulis}"
Penggunaan:
buku1 = Buku("Python Dasar", "Andi")
print(buku1)
Serta metode:
Contoh:
class Mobil:
def __init__(self, merek, warna):
self.merek = merek
self.warna = warna
def nyalakan(self):
print(self.merek, "dinyalakan")
def matikan(self):
print(self.merek, "dimatikan")
Membuat objek:
mobil1 = Mobil("Toyota", "Merah")
mobil2 = Mobil("Honda", "Hitam")
Setiap objek dapat memiliki data berbeda meskipun berasal dari class yang sama.
class Buku:
def __init__(self, judul, penulis, tahun):
self.judul = judul
self.penulis = penulis
self.tahun = tahun
def tampilkan(self):
print("Judul:", self.judul)
print("Penulis:", self.penulis)
print("Tahun:", self.tahun)
Penggunaan:
buku1 = Buku("Belajar Python", "Andi", 2026)
buku1.tampilkan()
class PersegiPanjang:
def __init__(self, panjang, lebar):
self.panjang = panjang
self.lebar = lebar
def luas(self):
return self.panjang * self.lebar
def keliling(self):
return 2 * (self.panjang + self.lebar)
Penggunaan:
persegi = PersegiPanjang(10, 5)
print("Luas:", persegi.luas())
print("Keliling:", persegi.keliling())
class Rekening:
def __init__(self, nama, saldo):
self.nama = nama
self.saldo = saldo
def setor(self, jumlah):
self.saldo += jumlah
def tampilkan_saldo(self):
print("Nama:", self.nama)
print("Saldo:", self.saldo)
Penggunaan:
rekening1 = Rekening("Andi", 100000)
rekening1.setor(50000)
rekening1.tampilkan_saldo()
class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
siswa1 = Siswa("Andi", "10A")
siswa2 = Siswa("Budi", "10B")
siswa3 = Siswa("Citra", "10C")
Setiap objek memiliki data sendiri.
class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
siswa1 = Siswa("Andi", "10A")
siswa2 = Siswa("Budi", "10B")
siswa3 = Siswa("Citra", "10C")
daftar_siswa = [siswa1, siswa2, siswa3]
List tersebut dapat digunakan untuk menyimpan banyak objek.
for siswa in daftar_siswa:
print(siswa.nama, siswa.kelas)
Cara tersebut sangat berguna ketika mengelola banyak data dengan bentuk yang sama.
Fungsi:
def salam():
print("Halo")
Metode:
class Siswa:
def salam(self):
print("Halo")
Perbedaannya adalah metode berada di dalam class dan biasanya bekerja dengan data milik objek.
Class:
Kendaraan
Atribut:
merek
warna
kecepatan
Metode:
nyalakan()
berhenti()
Objek:
mobil1
mobil2
mobil3
Setiap objek memiliki data yang berbeda tetapi memiliki struktur dan perilaku yang berasal dari class yang sama.
class Siswa:
def __init__(nama):
self.nama = nama
Contoh yang benar:
class Siswa:
def __init__(self, nama):
self.nama = nama
Contoh:
class Siswa:
def __init__(self, nama):
nama = nama
Kode tersebut tidak menyimpan nilai ke dalam atribut objek.
Yang benar:
class Siswa:
def __init__(self, nama):
self.nama = nama
siswa1.tampilkan()
Bukan sekadar:
tampilkan()
Tambahkan metode untuk menampilkan data buku.
Objek dibuat berdasarkan class. Satu class dapat digunakan untuk membuat banyak objek dengan data yang berbeda. Metode `__init__()` dapat digunakan untuk memberikan nilai awal ketika objek dibuat, sedangkan `self` digunakan untuk mengacu pada objek yang sedang digunakan.
Class juga dapat memiliki atribut class, metode khusus seperti `__str__()`, serta berbagai metode lain sesuai kebutuhan program. Objek dapat disimpan dalam list dan diproses menggunakan perulangan sehingga class sangat berguna untuk mengelola banyak data yang memiliki struktur serupa.
Dengan memahami class, objek, atribut, metode, `__init__()`, dan `self`, dasar pemrograman berorientasi objek dalam Python dapat dipahami dengan lebih baik. Konsep tersebut menjadi dasar untuk mempelajari materi lanjutan seperti pewarisan, enkapsulasi, polimorfisme, dan hubungan antarkelas.
Pengertian Class
Class adalah rancangan yang digunakan untuk membuat objek. Class dapat berisi data dan fungsi yang berkaitan dengan data tersebut. Sebagai contoh, terdapat sebuah class bernama `Siswa`.Class tersebut dapat memiliki:
- Nama siswa.
- Kelas siswa.
- Umur siswa.
- Fungsi untuk menampilkan data siswa.
Contoh sederhana:
class Siswa:
pass
Kode tersebut membuat class bernama `Siswa`. Kata kunci `class` digunakan untuk mendefinisikan class.
Tujuan Penggunaan Class
Class memiliki beberapa kegunaan dalam pembuatan program.- Mengelompokkan data yang saling berkaitan.
- Mengelompokkan fungsi yang berhubungan dengan data.
- Membuat program lebih terstruktur.
- Mengurangi pengulangan kode.
- Memudahkan pembuatan banyak objek dengan bentuk yang sama.
- Membantu pengelolaan program yang besar.
- Mendukung konsep pemrograman berorientasi objek.
Membuat Class Sederhana
Bentuk dasar class:class NamaClass:
# isi class
Contoh:
class Siswa:
pass
Nama class biasanya ditulis dengan huruf awal kapital agar mudah dibedakan dari variabel dan fungsi.
Membuat Objek dari Class
Class merupakan rancangan, sedangkan objek merupakan hasil pembuatan berdasarkan rancangan tersebut.Contoh:
class Siswa:
pass
siswa1 = Siswa()
Pada kode tersebut, `Siswa` merupakan class dan `siswa1` merupakan objek. Objek dibuat dengan menuliskan nama class diikuti tanda kurung.
Membuat Beberapa Objek
Satu class dapat digunakan untuk membuat banyak objek.class Siswa:
pass
siswa1 = Siswa()
siswa2 = Siswa()
siswa3 = Siswa()
Ketiga objek tersebut berasal dari class yang sama. Meskipun berasal dari class yang sama, setiap objek dapat memiliki data yang berbeda.
Atribut dalam Class
Atribut adalah data yang dimiliki oleh objek.Contoh:
class Siswa:
pass
siswa1 = Siswa()
siswa1.nama = "Andi"
siswa1.kelas = "10A"
siswa1.umur = 16
Pada contoh tersebut terdapat tiga atribut:
- `nama`
- `kelas`
- `umur`
Atribut tersebut dapat diakses melalui objek.
print(siswa1.nama)
print(siswa1.kelas)
print(siswa1.umur)
Membuat Atribut dengan **init**()
Python menyediakan metode khusus bernama `__init__()` untuk memberikan nilai awal kepada objek.Contoh:
class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
Objek dapat dibuat dengan memberikan nilai yang diperlukan.
siswa1 = Siswa("Andi", "10A")
Nilai tersebut disimpan sebagai atribut objek.
Memahami self
`self` mengacu pada objek yang sedang digunakan.Contoh:
class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
`self.nama` merupakan atribut `nama` milik objek tersebut.
Jika dibuat dua objek:
siswa1 = Siswa("Andi", "10A")
siswa2 = Siswa("Budi", "10B")
masing-masing objek memiliki nilai atribut sendiri.
Menampilkan Atribut
Atribut dapat ditampilkan menggunakan `print()`.class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
siswa1 = Siswa("Andi", "10A")
print(siswa1.nama)
print(siswa1.kelas)
Hasil:
Andi
10A
Mengubah Nilai Atribut
Nilai atribut dapat diubah setelah objek dibuat.class Siswa:
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
print(siswa1.nama)
siswa1.nama = "Budi"
print(siswa1.nama)
Nilai atribut `nama` berubah dari `"Andi"` menjadi `"Budi"`.
Menambahkan Atribut Baru
Atribut baru juga dapat ditambahkan pada objek.class Siswa:
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
siswa1.kelas = "10A"
siswa1.umur = 16
Sekarang objek memiliki atribut:
- `nama`
- `kelas`
- `umur`
Namun, pendekatan yang lebih teratur adalah mendefinisikan atribut utama di dalam `__init__()`.
Metode dalam Class
Metode adalah fungsi yang berada di dalam class.Contoh:
class Siswa:
def tampilkan_nama(self):
print("Nama siswa adalah Andi")
Metode dapat dipanggil melalui objek:
siswa1 = Siswa()
siswa1.tampilkan_nama()
Metode dengan Atribut
Metode dapat menggunakan atribut objek.class Siswa:
def __init__(self, nama):
self.nama = nama
def tampilkan_nama(self):
print("Nama:", self.nama)
Penggunaan:
siswa1 = Siswa("Andi")
siswa1.tampilkan_nama()
Hasil:
Nama: Andi
Metode dengan Parameter
Metode dapat menerima parameter.class Siswa:
def __init__(self, nama):
self.nama = nama
def sapa(self, pesan):
print(self.nama, pesan)
Penggunaan:
siswa1 = Siswa("Andi")
siswa1.sapa("selamat belajar")
Hasil:
Andi selamat belajar
Metode yang Mengembalikan Nilai
Metode juga dapat menggunakan `return`.class Persegi:
def __init__(self, sisi):
self.sisi = sisi
def luas(self):
return self.sisi * self.sisi
Penggunaan:
persegi1 = Persegi(5)
hasil = persegi1.luas()
print(hasil)
Hasil:
25
Class dengan Beberapa Atribut
Sebuah class dapat memiliki banyak atribut.class Siswa:
def __init__(self, nama, kelas, umur):
self.nama = nama
self.kelas = kelas
self.umur = umur
Objek:
siswa1 = Siswa("Andi", "10A", 16)
Data dapat ditampilkan:
print(siswa1.nama)
print(siswa1.kelas)
print(siswa1.umur)
Class dengan Beberapa Metode
Class juga dapat memiliki beberapa metode.class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
def tampilkan_data(self):
print("Nama:", self.nama)
print("Kelas:", self.kelas)
def belajar(self):
print(self.nama, "sedang belajar")
Penggunaan:
siswa1 = Siswa("Andi", "10A")
siswa1.tampilkan_data()
siswa1.belajar()
Atribut Class
Selain atribut objek, Python juga memungkinkan pembuatan atribut yang dimiliki bersama oleh class.Contoh:
class Siswa:
sekolah = "SMA Contoh"
def __init__(self, nama):
self.nama = nama
Atribut `sekolah` merupakan atribut class. Objek dapat mengaksesnya:
siswa1 = Siswa("Andi")
print(siswa1.sekolah)
Perbedaan Atribut Class dan Atribut Objek
Atribut objek biasanya ditulis menggunakan `self`.self.nama = nama
Nilainya dapat berbeda untuk setiap objek. Atribut class ditulis langsung di dalam class:
sekolah = "SMA Contoh"
Nilainya dapat digunakan oleh objek yang berasal dari class tersebut.
Contoh Atribut Class
Berikut diberikan contoh dari penggunaan atribut class.class Siswa:
sekolah = "SMA Contoh"
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
siswa2 = Siswa("Budi")
print(siswa1.sekolah)
print(siswa2.sekolah)
Kedua objek dapat mengakses atribut class `sekolah`.
Mengubah Atribut Objek
Atribut objek dapat diubah secara langsung.class Siswa:
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
siswa1.nama = "Budi"
print(siswa1.nama)
Hasilnya:
Budi
Menghapus Atribut
Atribut objek dapat dihapus menggunakan `del`.class Siswa:
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
del siswa1.nama
Setelah atribut dihapus, `siswa1.nama` tidak lagi tersedia.
Menghapus Objek
Objek juga dapat dihapus menggunakan `del`.class Siswa:
pass
siswa1 = Siswa()
del siswa1
Setelah itu, nama `siswa1` tidak lagi mengacu pada objek tersebut.
Memeriksa Atribut dengan hasattr()
Fungsi `hasattr()` dapat digunakan untuk memeriksa apakah objek memiliki atribut tertentu.class Siswa:
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
print(hasattr(siswa1, "nama"))
print(hasattr(siswa1, "umur"))
Hasil:
True
False
Mengambil Nilai Atribut dengan getattr()
`getattr()` dapat digunakan untuk mengambil nilai atribut.class Siswa:
def __init__(self, nama):
self.nama = nama
siswa1 = Siswa("Andi")
print(getattr(siswa1, "nama"))
Hasil:
Andi
Mengubah Atribut dengan setattr()
`setattr()` dapat digunakan untuk memberikan nilai pada atribut.class Siswa:
pass
siswa1 = Siswa()
setattr(siswa1, "nama", "Andi")
print(siswa1.nama)
Hasil:
Andi
Menghapus Atribut dengan delattr()
`delattr()` dapat digunakan untuk menghapus atribut.class Siswa:
def __init__(self):
self.nama = "Andi"
siswa1 = Siswa()
delattr(siswa1, "nama")
Atribut `nama` tidak lagi tersedia pada objek tersebut.
Metode Khusus **str**()
Python menyediakan metode khusus `__str__()` untuk menentukan bentuk teks yang ditampilkan ketika objek digunakan bersama `print()`.Contoh:
class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
def __str__(self):
return f"{self.nama} - {self.kelas}"
Penggunaan:
siswa1 = Siswa("Andi", "10A")
print(siswa1)
Hasil:
Andi - 10A
Metode **init**() dan **str**()
Kedua metode tersebut memiliki fungsi yang berbeda.
- `__init__()` digunakan ketika objek dibuat.
- `__str__()` digunakan untuk menentukan bentuk teks objek ketika ditampilkan.
Contoh:
class Buku:
def __init__(self, judul, penulis):
self.judul = judul
self.penulis = penulis
def __str__(self):
return f"{self.judul} - {self.penulis}"
Penggunaan:
buku1 = Buku("Python Dasar", "Andi")
print(buku1)
Class sebagai Rancangan
Class dapat dipahami sebagai rancangan sebuah objek. Misalnya class `Mobil` dapat memiliki:- Merek
- Warna
- Tahun
Serta metode:
- Nyalakan
- Matikan
- Berjalan
Contoh:
class Mobil:
def __init__(self, merek, warna):
self.merek = merek
self.warna = warna
def nyalakan(self):
print(self.merek, "dinyalakan")
def matikan(self):
print(self.merek, "dimatikan")
Membuat objek:
mobil1 = Mobil("Toyota", "Merah")
mobil2 = Mobil("Honda", "Hitam")
Setiap objek dapat memiliki data berbeda meskipun berasal dari class yang sama.
Contoh Class Buku
Berikut diberikan contoh dari class buku.class Buku:
def __init__(self, judul, penulis, tahun):
self.judul = judul
self.penulis = penulis
self.tahun = tahun
def tampilkan(self):
print("Judul:", self.judul)
print("Penulis:", self.penulis)
print("Tahun:", self.tahun)
Penggunaan:
buku1 = Buku("Belajar Python", "Andi", 2026)
buku1.tampilkan()
Contoh Class Persegi Panjang
Berikut diberikan contoh dari class persegi panjang.class PersegiPanjang:
def __init__(self, panjang, lebar):
self.panjang = panjang
self.lebar = lebar
def luas(self):
return self.panjang * self.lebar
def keliling(self):
return 2 * (self.panjang + self.lebar)
Penggunaan:
persegi = PersegiPanjang(10, 5)
print("Luas:", persegi.luas())
print("Keliling:", persegi.keliling())
Contoh Class Rekening
Berikut adalah contoh dari class rekening.class Rekening:
def __init__(self, nama, saldo):
self.nama = nama
self.saldo = saldo
def setor(self, jumlah):
self.saldo += jumlah
def tampilkan_saldo(self):
print("Nama:", self.nama)
print("Saldo:", self.saldo)
Penggunaan:
rekening1 = Rekening("Andi", 100000)
rekening1.setor(50000)
rekening1.tampilkan_saldo()
Membuat Banyak Objek
Salah satu manfaat class adalah kemampuan membuat banyak objek dengan rancangan yang sama.class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
siswa1 = Siswa("Andi", "10A")
siswa2 = Siswa("Budi", "10B")
siswa3 = Siswa("Citra", "10C")
Setiap objek memiliki data sendiri.
Menyimpan Objek dalam List
Objek dapat disimpan dalam list.class Siswa:
def __init__(self, nama, kelas):
self.nama = nama
self.kelas = kelas
siswa1 = Siswa("Andi", "10A")
siswa2 = Siswa("Budi", "10B")
siswa3 = Siswa("Citra", "10C")
daftar_siswa = [siswa1, siswa2, siswa3]
List tersebut dapat digunakan untuk menyimpan banyak objek.
Melakukan Perulangan pada Objek
Objek yang disimpan dalam list dapat diproses menggunakan perulangan.for siswa in daftar_siswa:
print(siswa.nama, siswa.kelas)
Cara tersebut sangat berguna ketika mengelola banyak data dengan bentuk yang sama.
Class dan Fungsi
Class dapat memiliki metode, sedangkan program juga dapat memiliki fungsi biasa.Fungsi:
def salam():
print("Halo")
Metode:
class Siswa:
def salam(self):
print("Halo")
Perbedaannya adalah metode berada di dalam class dan biasanya bekerja dengan data milik objek.
Class dan Objek dalam Kehidupan Sehari-hari
Konsep class dapat dipahami menggunakan contoh sederhana. Misalnya terdapat rancangan kendaraan.Class:
Kendaraan
Atribut:
merek
warna
kecepatan
Metode:
nyalakan()
berhenti()
Objek:
mobil1
mobil2
mobil3
Setiap objek memiliki data yang berbeda tetapi memiliki struktur dan perilaku yang berasal dari class yang sama.
Konsep Dasar Class
Beberapa istilah penting dalam pembelajaran class:| Istilah | Pengertian |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Kesalahan yang Sering Terjadi
Berikut dijelaskan beberapa bentuk kesalahan yang sering terjadi.Lupa Menulis self
Contoh yang salah:class Siswa:
def __init__(nama):
self.nama = nama
Contoh yang benar:
class Siswa:
def __init__(self, nama):
self.nama = nama
Lupa Menggunakan self pada Atribut
Berikut juga bentuk kesalahan lain, yaitu lupa menggunakan self pada atribut.
Contoh:
class Siswa:
def __init__(self, nama):
nama = nama
Kode tersebut tidak menyimpan nilai ke dalam atribut objek.
Yang benar:
class Siswa:
def __init__(self, nama):
self.nama = nama
Salah Memanggil Metode
Jika metode membutuhkan objek, metode tersebut dipanggil melalui objek:siswa1.tampilkan()
Bukan sekadar:
tampilkan()
Latihan
Berikut diberikan beberapa contoh latihan yang dapat langsung dipraktikkan.Latihan 1
Buat class `Siswa` yang memiliki atribut:- nama
- kelas
- umur
Latihan 2
Buat class `Buku` yang memiliki:- judul
- penulis
- tahun
Tambahkan metode untuk menampilkan data buku.
Latihan 3
Buat class `Persegi` dengan atribut sisi dan metode untuk menghitung luas.Latihan 4
Buat class `PersegiPanjang` dengan metode untuk menghitung luas dan keliling.Latihan 5
Buat class `Mobil` dengan atribut merek dan warna serta metode untuk menyalakan mobil.Latihan 6
Buat tiga objek dari class `Siswa` dan simpan seluruh objek dalam sebuah list.Latihan 7
Gunakan perulangan untuk menampilkan seluruh data siswa dari list.Latihan 8
Buat class yang memiliki metode `__str__()`.Latihan 9
Buat class rekening sederhana yang memiliki metode untuk menambah saldo.Latihan 10
Buat program pengelolaan data siswa menggunakan class, objek, atribut, metode, dan list.Kesimpulan
Class merupakan salah satu konsep penting dalam Python yang digunakan untuk membuat rancangan objek. Class dapat berisi atribut sebagai tempat menyimpan data dan metode sebagai fungsi untuk mengolah data tersebut.Objek dibuat berdasarkan class. Satu class dapat digunakan untuk membuat banyak objek dengan data yang berbeda. Metode `__init__()` dapat digunakan untuk memberikan nilai awal ketika objek dibuat, sedangkan `self` digunakan untuk mengacu pada objek yang sedang digunakan.
Class juga dapat memiliki atribut class, metode khusus seperti `__str__()`, serta berbagai metode lain sesuai kebutuhan program. Objek dapat disimpan dalam list dan diproses menggunakan perulangan sehingga class sangat berguna untuk mengelola banyak data yang memiliki struktur serupa.
Dengan memahami class, objek, atribut, metode, `__init__()`, dan `self`, dasar pemrograman berorientasi objek dalam Python dapat dipahami dengan lebih baik. Konsep tersebut menjadi dasar untuk mempelajari materi lanjutan seperti pewarisan, enkapsulasi, polimorfisme, dan hubungan antarkelas.
Artikel ini akan dibaca oleh: Erika Aisyah Putri, Eva Elvina Fitriani, Ezar Gatafa Aryo Zahari, Fadiya Hanun Lailatul Arsy, dan Fadlan Wahyu Saputra.
5 komentar untuk "Class dalam Python"
Hubungi admin melalui Wa : +62-896-2414-6106
Respon komentar 7 x 24 jam, mohon bersabar jika komentar tidak langsung dipublikasi atau mendapatkan balasan secara langsung.
Bantu admin meningkatkan kualitas blog dengan melaporkan berbagai permasalahan seperti typo, link bermasalah, dan lain sebagainya melalui kolom komentar.
- Ikatlah Ilmu dengan Memostingkannya -
Apa yang dimaksud dengan kompilator C++?
BalasHapusKompilator C++ merupakan program utilitas yang digunakan untuk mengambil kode program C++ dan mengubahnya menjadi file kode mesin yang dapat dieksekusi oleh komputer secara langsung.
HapusApa fungsi dari kompilator C++?
BalasHapusKompilator C++ berfungsi untuk mengubah file sumber menjadi file biner yang dapat dipindahkan, guna ditautkan nanti menjadi file yang dapat dieksekusi berupa file pustaka statis atau file dinamis.
HapusKompilator C++ merupakan program khusus yang menerjemahkan kode program kode sumber bahasa pemrograman menjadi kode mesin, bytecode, atau bahasa pemrograman lain. Kode sumber tersebut biasanya ditulis dalam bahasa tingkat tinggi yang dapat dibaca manusia seperti Java atau C++.
Hapus