Daftar Referensi Python

class adalah cetakan (blueprint) untuk membuat objek — menyatukan data (atribut) dan perilaku (method) dalam satu paket. Ini pintu masuk ke Object-Oriented Programming (OOP): dari satu class Siswa, kamu bisa membuat banyak objek siswa yang masing-masing punya data sendiri.

Sintaks

class NamaClass:
    def __init__(self, parameter):
        self.atribut = parameter

    def nama_method(self):
        ...

Istilah Penting

Istilah Arti
__init__ Method yang otomatis dijalankan saat objek dibuat (constructor)
self Rujukan ke objek itu sendiri — parameter pertama setiap method
atribut Data milik objek: self.nama
method Fungsi milik objek: objek.sapa()

Contoh

class Siswa:
    def __init__(self, nama, kelas):
        self.nama = nama
        self.kelas = kelas

andi = Siswa("Andi", "9A")
print(andi.nama)
print(andi.kelas)

Coba di IDE

Output:

Andi
9A

Contoh Lainnya

Method: perilaku milik objek

class Siswa:
    def __init__(self, nama):
        self.nama = nama

    def sapa(self):
        print(f"Halo, saya {self.nama}!")

budi = Siswa("Budi")
budi.sapa()

Coba di IDE

Output:

Halo, saya Budi!

Objek menyimpan keadaan (state)

class Lampu:
    def __init__(self):
        self.nyala = False

    def tekan(self):
        self.nyala = not self.nyala

l1 = Lampu()
l1.tekan()
print(l1.nyala)

Coba di IDE

Output:

True

Satu class, banyak objek independen

class Dompet:
    def __init__(self, saldo):
        self.saldo = saldo

d1 = Dompet(10000)
d2 = Dompet(50000)

d1.saldo += 5000
print(d1.saldo)
print(d2.saldo)

Coba di IDE

Output:

15000
50000

Kesalahan Umum

  • Lupa self di parameter method → TypeError: takes 0 positional arguments but 1 was given.
  • Lupa tanda kurung saat membuat objek: andi = Siswa menyalin class-nya, bukan membuat objek — panggil Siswa("Andi", "9A").
  • Menulis nama alih-alih self.nama di dalam method → NameError; data objek selalu lewat self.
  • Konvensi PEP 8: nama class pakai CapWords (DataSiswa), bukan snake_case.

Pelajari Lebih Lanjut