Class dan Object

Posted At: 27 Jun 2020 10:25:00

Artikel ini akan menjelaskan konsep dasar dari Class dan Object pada pemrograman Python. Setelah mempelajari modul ini maka pembaca akan memahami konsep Class dan Object.

Class adalah struktur terdefinisi yang terdiri dari property dan method. Property merupakan variabel sedangkan method merupakan fungsi. Property dan method pada pemrograman orientasi objek biasa disebut component. Object merupakan instance dari sebuah class.

Contoh dalam kehidupan sehari-hari misalkan class itu motor sedangkan object adalah Honda, Suzuki dan Yamaha. Contoh lainnya, class itu misalkan manusia sedangkan object adalah Ahmad, Badu dan Cecep.

Class Manusia misalkan memiliki property:

  • Nama
  • Jenis Kelaminm
  • Tinggi Badan
  • Berat Badan

Sedangkan untuk metho misalkan:

  • Berbicara
  • Berlari
  • Berjalan

Contoh pembuatan class:

class NamaKelas(object):
    pass

Terdapat 3 bagian utama pada sebuah Class yaitu:

  1. Constructor: untuk digunakan ketika terjadi inisialisasi objek
  2. Property: sebagai variabel yang digunakan.
  3. Method sebagai fungsi.

Constructor pada Python akan dijelaskan pada bagian berikut. Namun perlu diketahui bahwa keberadaan Constructor tidak dianggap sebagai method oleh Python, sekalipun pendeklarasiannya terlihat seperti sebuah method. Constructor digunakan saat melakukan instansiasi sebuah obejct yang menggunakan Class yang bersangkutan. Keberadaan Constructor dalam sebuah Class bersifat opsional. Coba perhatikan contoh berikut ini:

# proses pembuatan class
class Manusia(object):
    # deklarasi constructor
    def __init__(self, nama, jenis_kelamin, tinggi_badan, berat_badan):
        self.nama = nama
        self.jenis_kelamin = jenis_kelamin
        self.tinggi_badan = tinggi_badan
        self.berat_badan = berat_badan

# proses pembuatan object
badu = Manusia("Badu", "Pria", "150", "55")

Pada contoh terlihat sebuah class bernama Manusia yang memiliki property: nama, jenis_kelamin, tinggi_badan, berat_badan. Deklarasi Constructor terlihat pada bagian def __init__(self, nama, jenis_kela-min, tinggi_badan, berat_badan). Kemudian proses pembuatan object terlihat pada bagian badu = Manusia("Badu", "Pria", "150", "55"). Object badu akan memiliki nilai dari property adalah:

  • nama: Badu
  • jenis_kelamin: Pria
  • tinggi_badan: 150
  • berat_badan: 50

Cara menampilkan property yang dimiliki object badu digunakan tanda titik(.). Beri-kut ini contoh kode programnya:

# cetak property dari object
print(badu.nama)
print(badu.jenis_kelamin)
print(badu.tinggi_badan)
print(badu.berat_badan)

Maka program akan menampilkan setiap nilai dari property yang dimiliki object badu.

Untuk menambah method pada class maka diletakan setelah constructor. Berikut contohnya pembuatan method pada sebuah class

def berbicara(self):
    print(self.nama + " sedang berbicara")

def berlari(self):
    print(self.nama + " sedang berlari")

def berjalan(self):
    print(self.nama + " sedang berjalan")

Sedangkan untuk memanggil method dari sebuah object digunakan pola yaitu nama_object.nama_method(). Berikut ini contoh kode programnya.

badu.berbicara()
badu.berjalan()
badu.berlari()

Berikut ini kode lengkap dari class dan object pada contoh di atas.

# proses pembuatan class
class Manusia(object):
    # deklarasi constructor
    def __init__(self, nama, jenis_kelamin, tinggi_badan, berat_badan):
        self.nama = nama
        self.jenis_kelamin = jenis_kelamin
        self.tinggi_badan = tinggi_badan
        self.berat_badan = berat_badan

    def berbicara(self):
        print(self.nama + " sedang berbicara")

    def berlari(self):
        print(self.nama + " sedang berlari")

    def berjalan(self):
        print(self.nama + " sedang berjalan")


# proses pembuatan object
anita = Manusia("Anita", "Wanita", "160", "68")
badu = Manusia("Badu", "Pria", "150", "55")

# cetak property dari object
print(badu.nama)
print(badu.jenis_kelamin)
print(badu.tinggi_badan)
print(badu.berat_badan)

print(anita.nama)
print(anita.jenis_kelamin)
print(anita.tinggi_badan)
print(anita.berat_badan)

# menjalankan method dari object
badu.berbicara()
badu.berjalan()
badu.berlari()

anita.berbicara()
anita.berjalan()
anita.berlari()
Yulrio Brianorman
Blogger, pemiliki Onestring Lab, menulis artikel terkait teknologi informasi dan pendidikan. Web Developer, berpengalaman lebih dari 20 tahun mengembangkan berbagai aplikasi dan sistem informasi. Kerjasama : kontak saya.