Disusun oleh :
19/447297/SV/16991
SEKOLAH VOKASI
2020
1. Konsep Pemrograman Berorientasi Objek (PBO) intinya adalah berfokus dalam
pemrograman yang berorientasikan objek. Pembagian tanggung jawab tertuju kepada
masing-masing objek, dan bukan pembagian berdasarkan proses kerja. Pemrograman
jenis lain semisal pemrograman terstruktur berfokus pada prosedur atau fungsi.
Kelebihan PBO:
1) Penggunaan Class hanya sekali, tidak perlu berkali-kali
2) Data yang digunakan dalam bentuk private hanya bisa diakses oleh fungsi
lokasi, sehingga tidak perlu kkhawatir akan berpengaruh pada fungsi lainnya.
3) Pembuatan library mempermudah penggunaan
4) Dapat mengatur memori secara langsung tanpa harus manual
5) Menambahkan fitur Class tanpa mengedit class asal
6) Menggunakan objek tanpa harus tahu teknis yang ada di dalamnya
7) Banyak bahasa pemrograman yang mendukung PBO, antara lain:
1. Java
2. C++
3. Pascal (bahasa pemrograman)
4. Visual Basic.NET
5. SIMULA
6. Smalltalk
7. Ruby
8. Python
9. PHP
10. C#
11. Delphi
12. Eiffel
13. Perl
14. Adobe Flash AS 3.0
15. Visual Foxpro
2. Kelas adalah struktur data yang digunakan untuk mendefinisikan objek yang
menyimpan data bersama-sama nilai-nilai dan perilaku (behavior). Kelas adalah suatu
entitas yang merupakan bentuk program dari suatu abstraksi untuk permasalahan
dunia nyata, dan instans dari class merupkan realisasi dari beberapa objek.
Objek adalah unit terkecil pemrograman yag masih memiliki data (sifat karakteristik)
dan fungsi. Objek merupakan entitas dari sebuah keadaan, perilaku dan identitas yang
tugasnya dirumuskan dalam suatu lingkup masalah, pendeklarasian objek dari sebuah
Class disebut dengan instance. Object adalah turunan dari sebuah Class.
Function adalah sebuah statement yang dibuat di dalam blok dengan cara penulisan
yang telah ditentukan, agar dapat digunakan terus menerus. Sehingga tidak ada
penulisan code yang berulang.
Method merupakan fungsi yang melekat pada sebuah objek atau instan kelas.
Function adalah sebuah statement blok yang dibuat di luar sebuah class, sementara
method adalah statement blok yang didefinisikan di dalam sebuah class.
Constructor adalah method khusus yang akan dijalankan secara otomatis pada saat
sebuah objek dibuat (instansiasi). Constructor adalah method yang pertama kali
dijalankan pada saat sebuah objek pertama kali diciptakan
3. Kode program:
class Person (object):
def __init__(self,name):
self.name = name
def getName(self):
return self.name
def isEmployee(self):
return False
class Employee(Person):
def isEmployee(self):
return True
emp = Person("Geek1")
print(emp.getName(), emp.isEmployee())
emp = Employee("Geek2")
print(emp.getName(), emp.isEmployee())
A) Outputnya :
def getName(self):
return self.name
def isEmployee(self):
return False
class Employee(Person):
def isEmployee(self):
return True
emp = Person("Geek1")
emp = Employee("Geek2")
def getName(self):
return self.name
def isEmployee(self):
return False
def isEmployee(self):
return True
#Ini constructor
def __init__(self,name):
self.name = name
C) Analisis :
Kelas ditulis dengan syntax
def __init__(self,name):
self.name = name
def getName(self):
return self.name
def isEmployee(self):
return False
class Employee(Person):
def isEmployee(self):
return True
Constructor adalah method yang pertama kali dijalankan pada saat sebuah objek
pertama kali diciptakan. Jadi constructor dipanggil untuk menciptakan object. Pada
program diatas constructornya adalah
def __init__(self,name):
self.name = name
__init__ adalah konstruktor . Method yang pertama akan di eksekusi saat kita
pertamakali membuat Instance dari Class atau mudahnya yaitu menambahkan
argumen pada __init__ . Instance dari Class akan di initialiasi di __init__ dan bisa
memanggilnya dimana saja di dalam class itu.
self adalah Class Instance yang digunakan untuk mengakses Instance. “name” adalah
argumennya. Dalam kasus ini, Person memiliki nama sendiri.
def getName(self):
return self.name
def isEmployee(self):
return False
Merupakan anak dari parent class Person. Class Employee merupakan childs class
dari parent class Person. Itulah mengapa ditulis class Employee(Person).
emp = Person("Geek1")
adalah syntax untuk mengakses atribut objek dengan menggunakan operator titik.
Kasus ini, emp.getName menghasilkan “Geek1” yang disebut pada syntax
sebelumnya yang mana menggunakan method dari kelas Person yaitu isEmployee
yang bernilai False.
Selanjutnya,
emp = Employee("Geek2")
.print(emp.getName(), emp.isEmployee())
adalah syntax untuk mengakses atribut objek dengan menggunakan operator titik.
Kasus ini, emp.getName menghasilkan “Geek2” yang disebut pada syntax
sebelumnya yang mana menggunakan method dari kelas Employee yaitu isEmployee
yang bernilai True.