0% menganggap dokumen ini bermanfaat (0 suara)
7 tayangan

Belajar Java Part 13

Diunggah oleh

Dicky Christian
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PPTX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
7 tayangan

Belajar Java Part 13

Diunggah oleh

Dicky Christian
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PPTX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 36

BELAJAR JAVA

OOP
Cara Membuat Method
bahasa Java
2
Cara Mengakses Nilai Kembalian Method

▰ Pada dasarnya sebuah method adalah function yang ada di dalam class. Semua fitur function
bisa kita pakai ke dalam method, misalnya mengembalikan suatu nilai (return):

3
Cara Mengakses Nilai Kembalian Method

▰ Di baris 1-6 saya membuat class Laptop dengan property harga yang diisi angka
7500000. Setelah itu terdapat method cekHarga yang mengembalikan sebuah string
di baris 7.
▰ Class laptop kemudian di instansiasi pada baris 11 ke dalam object LaptopAnto. Di
bawahnya, variabel hargaLaptopAnto akan menampung hasil pemanggilan
method laptopAnto.cekHarga().
▰ Dengan cara ini, variabel hargaLaptopAnto akan berisi string "Harga Laptop adalah
7500000", sesuai dengan hasil perintah return dari method laptopAnto.cekHarga().

4
Cara Mengakses Nilai Kembalian Method

▰ Dalam kebanyakan situasi, nilai kembalian method bisa langsung di akses dari dalam System.out.println() seperti
contoh berikut:

▰ Sekarang di baris 11 method laptopAnto.cekHarga() langsung diakses dari dalam perintah System.out.println().

5
Cara Mengirim Paramenter/Argument Method

▰ Fitur lain dari sebuah method adalah bisa menerima nilai input melalui argument / parameter. Berikut contoh
prakteknya:

▰ Kali ini method cekHarga() di baris 2 menerima satu parameter harga. Dengan demikian, pada saat pemanggilan
method ini di baris 10, kita bisa mengirim 1 argument bertipe integer seperti laptopAnto.cekHarga(7500000).

6
Cara Memanggil Method dalam Class yang Sama

▰ Untuk kode yang agak kompleks, sebuah method bisa memanggil method lain dalam class yang sama. Tanpa
menjalankan kode program berikut bisakah anda menebak hasilnya?

7
Cara Memanggil Method dalam Class yang Sama

▰ Di dalam class Laptop sekarang ada 3 buah


method: hidupkanLaptop(), matikanLaptop() dan restartLaptop().
▰ Method hidupkanLaptop() dan matikanLaptop() butuh 2 argument dan mengembalikan
sebuah string. Kedua method ini diakses dari dalam method restartLaptop().
▰ Method restartLaptop() tidak mengembalikan nilai (void), dan langsung menampilkan hasil
method hidupkanLaptop() dan matikanLaptop() dengan perintah System.out.println().
▰ Di dalam class BelajarJava object laptopAnto di-instansiasi dari class Laptop, lalu
menjalankan method restartLaptop().

8
Pengertian Constructor
pada Java
9
Pengertian Constructor

▰ Constructor adalah method khusus yang dijalankan secara otomatis pada saat sebuah object
dibuat, yakni saat proses instansiasi.
▰ Constructor biasa dipakai untuk membuat proses awal dalam persiapan object, seperti
memberi nilai kepada property, memanggil method internal serta beberapa proses lain yang
dirasa perlu.
▰ Dalam bahasa Java, constructor dibuat dengan cara menulis sebuah method yang namanya
sama dengan nama class. Sebagai contoh jika kita memiliki class Laptop, maka function
constructor juga harus bernama Laptop().
▰ Sebuah constructor tidak mengembalikan nilai sehingga tidak perlu menulis tipe data sebelum
nama function. Constructor juga harus memiliki hak akses public, yang apabila tidak ditulis
dianggap public secara default.
▰ Ciri lain dari constructor adalah, hanya boleh ada satu constructor method di setiap class.

10
11
Pengertian Constructor

▰ Dalam kode program di atas saya kembali membuat class Laptop. Class Laptop memiliki 1
constructor Laptop() di baris 2-4 yang hanya berisi satu perintah System.out.println.
▰ Kemudian di dalam class BelajarJava terdapat 3 buah object dari class Laptop, yakni
object laptopAndi, laptopLisa dan laptopRudi.

▰ Semua teks ini berasal dari perintah System.out.println di dalam method Laptop().

12
Constructor Sebagai
Tempat Inisialisasi
Property
13
Constructor Sebagai Tempat Inisialisasi Property

▰ Salah satu fungsi utama constructor adalah untuk proses inisialisasi property, yakni pemberian
nilai awal kepada property yang ada di dalam object:

14
Constructor Sebagai Tempat Inisialisasi Property

▰ Di dalam constructor, terdapat pendefinisian 2 property: pemilik dan merk. Keduanya langsung
diisi nilai awal dan diakses dari perintah System.out.println().
▰ Pada saat class Laptop di-instansiasi ke dalam object laptopAnto di baris 12, akan tampil teks
yang berasal dari constructor.

15
Mengisi Constructor
dengan
Parameter/Argument
16
Mengisi Constructor dengan Parameter/Argument

▰ Kita juga bisa mengirim nilai input ke dalam constructor. Caranya, tulis sebagai argument pada saat
pembuatan object. Sesampainya di dalam constructor, argument tadi bisa ditampung ke dalam parameter.
Berikut contoh prakteknya:

17
Mengisi Constructor dengan Parameter/Argument

▰ Constructor class Laptop sekarang menerima 2 buah parameter, yakni pemilik dan merk. Dengan
demikian pada saat proses instansiasi, kita harus mengisi dua nilai, misalnya new Laptop("Andi","Asus").

▰ Kedua parameter kemudian ditampilkan dengan perintah System.out.println() dari dalam constructor.

18
Cara Membuat Pewarisan
Class (Inheritance)
19
Pengertian Inheritance (Pewarisan Class)

▰ Inheritance adalah konsep OOP dimana sebuah class dapat menurunkan property dan method yang
dimilikinya kepada class lain. Konsep inheritance dipakai untuk memanfaatkan fitur code reuse, yakni
menghindari terjadinya duplikasi kode program.
▰ Dalam bahasa Indonesia, inheritance ini disebut juga sebagai pewarisan atau penurunan.
▰ Konsep inheritance membuat sebuah struktur atau hierarki class dalam kode program. Class yang akan
diturunkan bisa disebut sebagai class induk (parent class), super class, atau base class.
▰ Sedangkan class yang menerima penurunan bisa disebut sebagai class anak (child class), sub class, derived
class atau heir class.
▰ Dalam tutorial ini saya akan menggunakan istilah parent class dan child class, tapi seperti yang tertulis
diatas, banyak istilah yang bisa dipakai.

20
Cara Menurunkan Class di Java

▰ Untuk menurunkan sebuah class di bahasa pemrograman Java, tulis nama child class, lalu perintah
extends dan baru tulis nama parent class. Berikut contoh kode program yang di maksud:

21
Cara Menurunkan Class di Java

▰ Dalam kode ini saya membuat dua buah class: Komputer dan Laptop. Perhatikan perintah di baris 5, itulah
cara menurunkan class Komputer kepada class Laptop. Yakni dengan cara menulis perintah extends,
diikuti nama parent class yang ingin diturunkan.
▰ Setelah perintah tersebut, class Laptop adalah anak (child) dari class Komputer. Class Laptop nantinya bisa
mengakses semua property dan juga method milik class Komputer.
▰ Dalam konsep OOP, hubungan antara parent class dan child class seharusnya memiliki makna tertentu.
Biasanya hubungan yang terjadi adalah "is-a", atau "adalah sebuah".
▰ Maksudnya, jika class Laptop adalah turunan dari class Komputer, maka seharusnya Laptop adalah sebuah
Komputer. Dalam hal ini Laptop adalah bentuk yang lebih khusus dari Laptop. Selain laptop, class
Komputer bisa saja memiliki child class lain seperti KomputerDesktop.
▰ Contoh pewarisan lain adalah antara class Binatang dengan Kucing. Disini kucing adalah sebuah binatang.
Atau class Mobil yang memiliki parent class Kendaraan.

22
Cara Mengakses Data Parent Class

▰ Contoh sebelumnya masih sangat sederhana, dimana class Komputer dan class Laptop belum memiliki
data apapun. Sekarang kita akan isi dengan beberapa property dan method:

23
Cara Mengakses Data Parent Class

▰ Dalam kode diatas, class Komputer memiliki satu property processor dan satu method cekKomputer().
Sedangkan class Laptop memiliki property merk dan method cekLaptop().
▰ Karena class Laptop adalah turunan dari class Komputer, maka kita bisa mengakses semua isi class
Komputer dari object class Laptop.
▰ Di dalam class BelajarJava saya membuat object laptopAndi yang di instansiasi dari class Laptop. Object
laptopAndi bisa mengakses semua isi class Komputer, yakni laptopAndi.processor dan
laptopAndi.cekKomputer(). Seolah-olah data dan function ini di definisikan dari dalam class Laptop.

24
Mengisi Property Menggunakan Constructor

▰ Untuk materi yang sedikit lebih kompleks, dalam kode program berikut saya mengisi ketiga property milik
class Komputer dari constructor class Laptop.

25
26
Mengisi Property Menggunakan Constructor

▰ Pendefinisian property processor, merk dan memory tetap dilakukan dari class Komputer. Hanya saja
sekarang proses pengisian ketiga data dilakukan oleh constructor class Laptop seperti di baris 8-12.
▰ Constructor class Laptop butuh 3 buah parameter, yakni paramProcessor, paramMerk dan paramMemory.
Ketiga parameter ini harus diisi pada saat proses instansiasi class Laptop seperti di baris 22 dan 23.
▰ Hasilnya, pada saat method lihatSpec() diakses dari object laptopAndi dan laptopRudi, akan tampil nilai
yang berbeda-beda.

27
Mengisi Property Menggunakan Constructor

▰ Ketika mempelajari kode yang agak panjang dan melibatkan banyak object seperti diatas, mulailah
membaca kode program dari main() terlebih dahulu.
▰ Jika terdapat proses instansiasi object dengan argument, baru masuk ke dalam pendefinisian class
tersebut dan ikuti alur pengiriman argumen hingga mengisi property dari sebuah class. Apabila kita mulai
membaca dari pendefinisian class terlebih dahulu, biasanya memang lebih rumit.

▰ Inheritance atau proses pewarisan class memang menjadi topik yang cukup rumit tapi sangat penting.
Untuk kode program yang kompleks, bisa saja ada sebuah class yang diturunkan kepada class lain, dan
kemudian di turunkan lagi kepada class selanjutnya .

28
Cara Membuat Multiple Inheritance

▰ Multilevel Inheritance adalah pewarisan class berjenjang dari satu class ke class lain. Misalkan kita memiliki
class A yang diturunkan kepada class B. Kemudian class B ini juga diturunkan kepada class C, sehingga
sudah terjadi sebuah multilevel inheritance.

▰ Dalam contoh ini class A adalah kakek atau grand parent dari class C, maka semua property dan method
dari class A juga bisa diakses dari class C.

29
30
Cara Membuat Multiple Inheritance

▰ Cara pembuatan multilevel inheritance sebenarnya sama seperti pewarisan class biasa, hanya saja setiap
class saling terhubung satu sama lain.

▰ Hubungan "is-a" antara child class dengan parent class juga harusnya berlaku dalam multilevel inheritance.
Dalam contoh diatas, Netbook adalah sebuah Laptop, dan Laptop adalah sebuah Komputer. Dengan
demikian Netbook juga adalah sebuah Komputer.

31
32
33
Cara Membuat Multiple Inheritance

▰ Kode program ini lumayan panjang karena terdapat 3 class yang masing-masingnya memiliki property dan
method. Agar lebih mudah dipahami, kita bahas dari method main() di class BelajarJava terlebih dahulu.

▰ Sebagai perintah pertama di dalam method main(), terdapat kode Netbook netbookAndi = new Netbook().
Ini adalah proses instansiasi pembuatan object class Netbook yang disimpan ke dalam variabel
netbookAndi. Dengan membaca kode ini kita bisa pastikan bahwa harusnya ada kode untuk pendefinisian
class Netbook.

▰ Setelah proses instansiasi, terdapat kode System.out.println(netbookAndi.lihatSpec()). Maka kita akan lihat
apa isi dari method lihatSpec() yang terdapat di dalam class Netbook.

▰ Pendefinisian class Netbook ada di baris 19-28. Di baris awal terlihat bahwa class Netbook adalah turunan
dari class Laptop. Maka method lihatSpec() bisa saja ada di dalam class ini, atau parent classnya.

34
Cara Membuat Multiple Inheritance

▰ Ternyata pendefinisian method lihatSpec() ada di dalam class Netbook, yang isinya merangkai sebuah
string dari 4 property, yakni merk, processor, memory dan storage. Namun di dalam class Netbook tidak
ada pendefinisian data ini. Maka kita akan cari ke parent class, yaitu class Laptop.

▰ Pendefinisian class Laptop ada di baris 11-17. Di baris awal juga terlihat bahwa class ini ternyata juga
memiliki parent class, yakni class Komputer. Sehingga bisa saja property yang kita cari tidak ada di dalam
class Laptop.

▰ Dan ternyata di dalam class Laptop hanya ada 1 property, yakni storage = "SSD 1TB". Maka kita harus cari
lagi ke dalam class Komputer.

▰ Pendefinisian class Komputer ada di baris 1-9. Dan disinilah ditemukan sisa 3 property lain, yakni
processor = "Intel Core i9", merk = "Asus" dan memory = "16 GB".

35
Cara Membuat Multiple Inheritance

▰ Maka lengkap sudah isi dari pemanggilan method netbookAndi.lihatSpec(), dan hasilnya adalah "Merk:
Asus, processor: Intel Core i9, jumlah memory: 16 GB, storage: SSD 1TB".

▰ Kita kembali ke method main() dan 3 perintah berikutnya dipakai untuk mengakses 3 method:

▰ Ketiga method ini ada di setiap class terpisah. Karena class Netbook adalah turunan dari class Laptop dan
class Laptop sendiri adalah turunan dari class Komputer, maka object netbookAndi bisa mengakses ketiga
method tersebut.

36

Anda mungkin juga menyukai