Pengertian OOP
OOP (Object Oriented Programming) adalah suatu model pemrograman
yang berorientasi kepada objek. Tujuanya untuk mempermudah pengembangan
program dengan cara mengikuti model yang telah ada di kehidupan sehari-hari.
Singkatnya OOP adalah koleksi objek yang saling berinteraksi dan saling
memberikan informasi satu dengan yang lainnya.
Misal kita ambil contoh mobil, mobil adalah sebuah objek. Mobil itu sendiri
terbentuk dari beberapa objek yang lebih kecil lagi seperti mesin, roda, pintu,
kursi, dll. Mobil sebagai objek yang terbentuk dari objek-objek yang lebih kecil
saling berhubungan, berinteraksi, berkomunikasi dan saling mengirim pesan
kepada objek-objek yang lainnya. Begitu juga dengan program, sebuah objek
yang besar dibentuk dari beberapa objek yang lebih kecil, objek-objek itu saling
berkomunikasi, dan saling berkirim pesan kepada objek yang lain.
1. Komentar
4. Data
5. Method
6. Main Method
1
Desktop Programming AMCC
Penciptaan Kelas
Kelas dapat dibuat sebagai kelas yang baru atau dibentuk dari kelas yang
sudah ada. Proses pembentukan kelas baru dari kelas yang sudah ada
menggunakan method Inheritance (pewarisan) menjadi kelas Super(induk)
dan Kelas Sub(anak). Proses pembentukan kelas menghasilkan hierarki
2
Desktop Programming AMCC
kelas yaitu puncak hierarki yang disebut sebagai kelas abstrak dengan
memiliki dsekripsi data dan method yang sangat umum.
3
Desktop Programming AMCC
Penciptaan Objek
Objek dibuat dengan mula-mula membuat variable yang kelak merujuk ke
objek. Variabel seperti ini biasa disebut variable objek. Selanjutnya objek
diciptakan dengan melalui new dan hasilnya ditugaskan ke variable objek.
Proses penciptaan objek disebut Instansiasi.
Contoh:
Access Modifier
Access modifier merupakan keyword yang digunakan untuk menentukan
spesifikasi tingkat akses suatu vaiable atau method (anggota kelas). Peng-
aksesan yang dimaksud bisa berupa pengaksesan dalam kelas yang sama,
turunan maupun dari luar kelas di mana variable dan method dideklarasikan.
Dalam Java access modifier teridiri dari
1. default
Access Modifier ini hanya menspesifikasikan kelas-kelas (classes) di paket
yang sama yang bisa mengakses variable dan method suatu kelas.
Anggota kelas dengan default access bisa melihat kelas lain dipaket yang
sama. Tidak ada keyword khusus untuk mendeklarasikan modifier default
access. Sehingga apabila tidak ada access modifier pada pendeklarasian
tersebut, berarti yang dimaksud adalah default access.
2. public
Suatu anggota kelas (class member) dideklarasikan sebagai public, maka
anggota tersebut akan bisa digunakan oleh siapa saja, yaitu baik oleh kelas
yang sama, kelas lain maupun lingkungan luar kelas. Sehingga anggota
kelas (class member) yang dideklarasikan sebagai public akan bisa diakses
oleh sembarang object lain.
3. protected
Access modifier protected menspesifikasikan atau menentukan anggota
kelas (class member) yang hanya bisa diakses oleh method-method yang
ada di dalam kelas yang sama dan juga dapat diakses oleh subclass (kelas
turunan) dari kelas tersebut.
4
Desktop Programming AMCC
4. private
Access modifier private merupakan tingkatan akses yang sangat terbatas.
Kemudian seperti modifier-modifier lain, modifier private menspesifikasikan
anggota kelas (class member) yang hanya bisa diakses oleh kelas dimana
anggota-anggota kelas tersebut dideklarasikan. Keadaan ini
mengakibatkan bahwa tidak ada kelas lain yang bisa mengakses anggota
kelas private, sekaligus termasuk subkelas-subkelas (subclassess)-nya
Access modifier private adalah yang paling terbatas, menspesifikasikan
anggota kelas(variable dan method) hanya dapat diakses oleh kelas
dimana anggota itu didefinisika
Perlu diingat
Untuk membuat file java harus diperhatikan beberapa ketentuan berikut :
• File yang dibuat harus berekstensi java dan nama file sama dengan
nama kelas yang dibuat.
• Untuk mencompile file java dengan perintah javac [nama file].java,
pada Command Prompt.
• Untuk menjalankan file java dengan perintah java [nama file].
5
Desktop Programming AMCC
Contoh Program :
Konstruktor
Kita sudah mengetahui bahwa kelas adalah alat untuk menciptakan objek.
Sekarang yang menjadi pertanyaan adalah bagaimana cara menciptakan
objek menggunakan sebuah kelas. Jawabannya adalah dengan menggunakan
sebuah konstruktor.
6
Desktop Programming AMCC
adalah bahwa suatu konstrukor tidak termasuk anggota suatu kelas seperti
metode dan variabel dan bahwa konstruktor bisa dibuat lebih dari satu.
Metode konstruktor ini akan dipanggil secara otomatis oleh java ketika New
dipakai untuk menciptakan instant kelas.
7
Desktop Programming AMCC
Contoh Program 2 dengan Konstruktor
Output Program 1 :
Ouput Program 2 :
Overloading
Overload adalah pembuatan method-method dengan nama yang sama
tetapi jumlah parameter dari method-method tersebut berbeda.
8
Desktop Programming AMCC
Contoh Overloading :
Overriding
Overriding memiliki method yang namanya sama namun berbeda class.
Method pertama adalah method yang berasal dari class induk dengan parameter
yang sama dengan method pada class turunan. Pada Overriding nama method
dan parameternya pada kedua classnya harus sama.
9
Desktop Programming AMCC
Contoh Overriding 1:
Output :
Dari hasil diatas bahwa pada saat kita membentuk Objek dari kelas
Turunan, dan memanggil method ContohOverride() melalui objek tersebut,
maka method ContohOverride() yang terpanggil adalah method yang dimiliki
oleh kelas Turunan.
Nah, dalam beberapa kasus terkadang kita juga ingin memanggil method
dari kelas Asli-nya. Untuk mengatasi ini kita bisa menggunakan kata kunci super
seperti contoh dibawah in
10
Desktop Programming AMCC
Contoh Override 2 :
Output :
Inheritance
Inheritance, atau pewarisan adalah untuk membuat suatu kelas dengan
didasari pada kelas yang sudah ada sehingga mewarisi semua metode dan
variable/ atributnya yang ada pada kelas induk, sehingga tidak perlu menuliskan
kode dari awal.
11
Desktop Programming AMCC
Contoh Inheritance :
Output :
Terlihat pada contoh diatas bahwa kelas Turunan mewarisi atribut String A,
dan mewarisi juga method-method dari kelas Induk.
12
Desktop Programming AMCC
Encapsulation
Encapsulation atau pembungkusan adalah pengemasan suatu objek
sehingga pada saat kita akan memakai objek tersebut kita tidak perlu lagi tahu
tentang detail bagaimana suatu action itu terjadi.
Output:
13
Desktop Programming AMCC
Polymorphism
Polymorphism yaitu kemampuan untuk bisa bertindak lain atau melakukan
hal yang berbeda dengan method yang sama.
Contoh :
Output :
HAPPY CODING ☺
14