Anatomi kelas: atribut dan metode

Pengantar Pemrograman Berorientasi Objek di Python

George Boorman

Curriculum Manager, DataCamp

Kelas Customer

class Customer:

# Kode untuk kelas diletakkan di sini
pass
  • class <name>: memulai definisi kelas
  • Kode di dalam class ditulis menjorok (indent)
  • Gunakan pass untuk membuat kelas "kosong"
c_one = Customer()
c_two = Customer()
  • Gunakan ClassName() untuk membuat objek dari kelas ClassName
Pengantar Pemrograman Berorientasi Objek di Python

Tambahkan metode ke kelas

class Customer:  

def identify(self, name): print("I am Customer " + name)
  • Definisi metode = definisi fungsi di dalam kelas
  • Gunakan self sebagai argumen pertama dalam definisi metode
cust = Customer()
cust.identify("Laura")
I am Customer Laura
  • Abaikan self saat memanggil metode pada objek
Pengantar Pemrograman Berorientasi Objek di Python
class Customer:  
    def identify(self, name):
        print("I am Customer " + name)

cust = Customer()
cust.identify("Laura")

Apa itu self?

  • Kelas adalah template
  • self harus argumen pertama setiap metode
  • self mewakili objek (yang belum dibuat)
  • cust.identify("Laura") akan ditafsirkan sebagai Customer.identify(cust, "Laura")
Pengantar Pemrograman Berorientasi Objek di Python

Kita butuh atribut

  • OOP menggabungkan data dengan metode yang memprosesnya
    • Nama Customer sebaiknya jadi atribut

 

$$\text{\Large{Atribut dibuat dengan assignment (=) di dalam metode}}$$

Pengantar Pemrograman Berorientasi Objek di Python

Tambahkan atribut ke kelas

class Customer:  
    # Setel atribut name objek ke new_name
    def set_name(self, new_name):

# Buat atribut dengan memberi nilai # Akan membuat .name saat set_name dipanggil self.name = new_name
# Buat objek # .name belum ada di sini cust = Customer()
# .name dibuat dan diisi "Lara de Silva" cust.set_name("Lara de Silva")
print(cust.name)
Lara de Silva
Pengantar Pemrograman Berorientasi Objek di Python

Versi lama

class Customer:  



    # Menggunakan parameter
    def identify(self, name):
        print("I am Customer" + name)
cust = Customer()

cust.identify("Eris Odoro") 
I am Customer Eris Odoro 

Versi baru

class Customer:  
   def set_name(self, new_name):
       self.name = new_name

# Menggunakan .name dari objek itu self def identify(self): print("I am Customer" + self.name)
cust = Customer()
cust.set_name("Rashid Volkov")
cust.identify()
I am Customer Rashid Volkov
Pengantar Pemrograman Berorientasi Objek di Python

Ayo berlatih!

Pengantar Pemrograman Berorientasi Objek di Python

Preparing Video For Download...