![Page 2: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/2.jpg)
Tanya jawab (1)
![Page 3: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/3.jpg)
Tanya jawab (2)
![Page 4: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/4.jpg)
Java Naming conventions• Package names: start with lowercase letter
� E.g. java.util, java.net, java.io . . .
• Class names: start with uppercase letter� E.g. File, Math . . .
� avoid name conflicts with packages
� avoid name conflicts with standard keywords in java system
• Variable, field and method names: start with lowercase letter� E.g. x, out, abs . . .� E.g. x, out, abs . . .
• Constant names: all uppercase letters� E.g. PI . . .
• Multi-word names: capitalize the first letter of each word after the first one� E.g. HelloWorldApp, getName . . .
• Exception class names: (1) start with uppercase letter (2) end with “Exception” with normal exception and “Error” with fatal exception
� E.g. OutOfMemoryError, FileNotFoundException
![Page 5: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/5.jpg)
Method
• Disebut juga behaviour
• Memiliki hak akses modifier seperti pada
pertemuan sebelumnya
• Terdapat 2 jenis method:• Terdapat 2 jenis method:
– Asesor: method “pengambil nilai”, ada return
value
• getter, getNamaField
– Mutator: method “pengubah nilai”
• Setter, setNamaField
![Page 6: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/6.jpg)
Tujuan Method
• Untuk implementasi dari enkapsulasi
• Untuk melindungi pengaksesan langsung variabel class dari luar class
• Untuk menciptakan modularitas• Untuk menciptakan modularitas
• Untuk menciptakan konsep API
• Getter dan Setter tidak harus ada pada semua variabel class
• Client tidak perlu tahu detail sebuah isi variabel
class dan juga isi method!
![Page 7: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/7.jpg)
Kasus
getter
setter
![Page 8: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/8.jpg)
Contoh
![Page 9: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/9.jpg)
Remember this ?
getter
setter
![Page 10: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/10.jpg)
Apa bedanya atribut berikut?
![Page 11: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/11.jpg)
Implementasi Enkapsulasi
FacebookUser fu = new FacebookUser()
fu.setUserName(“anton”);fu.setPassword(“rahasia”);fu.setEmail(“[email protected]”);
![Page 12: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/12.jpg)
Method invocation
• Pemanggilan method menggunakan tanda
titik (.)
– static method:
• namaClass.method(arguments)
– non-static method:
• namaObject.method(arguments)
![Page 13: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/13.jpg)
Method parameter
• Parameter yang ada pada suatu method
• Untuk memanggil method tersebut, kita
mungkin perlu menyertakan parameter
• Contoh:• Contoh:
public void setNama(String nama){
//isi kode
}
![Page 14: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/14.jpg)
Method Paramter
• Ada method yang bisa dipanggil tanpa
membutuhkan parameter
• Contoh:• Contoh:
public String getNama(){
return this.nama;
}
![Page 15: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/15.jpg)
Method Name
• Dalam satu class, bisa didefinisikan dua
method atau lebih dengan nama method yang
sama
• Yang membedakan method satu dengan • Yang membedakan method satu dengan
lainnya adalah jumlah dan jenis parameternya
(signature nya)
![Page 16: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/16.jpg)
Pengiriman parameter
• Pengiriman parameter pada Java bersifat by
value
• Ada dua value:
– Tipe data primitif
• Yang dikirimkan adalah nilainya (by value)
• Perubahan nilai variabel di dalam method tidak berdampakpada nilai variabel di luar method
– Tipe data object
• Yang dikirimkan adalah ‘nilainya’ (alamat memory object) by value
• Perubahan object di dalam method akan mempengaruhiobject tersebut
![Page 17: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/17.jpg)
Method parameter
![Page 18: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/18.jpg)
class PassRef{
public static void main(String[] args) {
Pencil plainPencil = new Pencil("PLAIN");
System.out.println("original color: " + plainPencil.color);
paintRed(plainPencil);
System.out.println("new color: " + plainPencil.color);
Pass By Value
plainPencil
plainPencil
plainPencil p
color: PLAIN
color: PLAIN
color: RED
p
plainPencil.color);
}
public static void paintRed(Pencil p) {
p.color = "RED";
p = null;
}
}
plainPencil p
color: RED
color: RED NULL
- You can change which object a parameter refers to inside a method without affecting the original reference which is passed
- What is passed is the object reference, and it’s passed in the manner of “PASSING BY VALUE”!
![Page 19: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/19.jpg)
Overloading method
• public void println(String s) { ... }
• public void println (int n) { ... }
• public void println(double d) { ... }
• System.out.println(“Halo semua...”);
• System.out.println(10);
• System.out.println(3.1415);
![Page 20: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/20.jpg)
Method yang sama
• public int hitung(int alas, int tinggi) { ... }
• public int hitung(int a, int t) { ... }
• Kedua method tersebut dianggap sama, anda • Kedua method tersebut dianggap sama, anda
akan gagal untuk kompilasi
![Page 21: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/21.jpg)
Gagal kompilasi
![Page 22: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/22.jpg)
Method signature
• public int hitung(int alas, int tinggi) { ... }
• public int hitung(int a, int t) { ... }
• public int hitung(int, int) -> method signature
![Page 23: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/23.jpg)
Method signature
• Jika ada dua method bernama sama, method signature keduanya harus berbeda.
• Perbedaan dilihat dari jumlah dan urutanparameter
• public void daftar(String nama, int nim)
• public void daftar(int nim, String nama)
• public void daftar (String n, int id)
• public int daftar(String nama, int nim)
![Page 24: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/24.jpg)
Overloading konstruktor
• Satu class bisa memiliki lebih dari 1
constructor
• Constructor harus berbeda (memiliki method
signature yang berbeda) satu sama lainsignature yang berbeda) satu sama lain
• Tabungan(String nama, double saldo)
• Tabungan()
• Tabungan(String nama)
![Page 25: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/25.jpg)
Contoh
![Page 26: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/26.jpg)
Tanya Jawab
![Page 27: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/27.jpg)
Tanya jawab
![Page 28: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/28.jpg)
Class reuse
• Jika class-class berada dalam satu direktori
yang sama, class bisa langsung digunakan
• Jika ingin menggunakan class yang berada
dilokasi lain, gunakan keyword import dan dilokasi lain, gunakan keyword import dan
package
• Class-class dikelompokkan dalam package-
package
![Page 29: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/29.jpg)
Contoh
![Page 30: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/30.jpg)
Class reuse
• Class-class yang sudah ada bisa langsung
digunakan
• Suatu saat kita butuh mengubah atau
menambahkan fungsi baru/atribut baru ke menambahkan fungsi baru/atribut baru ke
class yang sudah ada
• Ada beberapa pilihan:
– Membuat class baru
– Mengubah class lama
![Page 31: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/31.jpg)
Contoh penggunaan
![Page 32: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/32.jpg)
Contoh kasus
![Page 33: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/33.jpg)
Contoh Kasus
![Page 34: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/34.jpg)
Contoh Kasus
![Page 35: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/35.jpg)
Perubahan requirements
![Page 36: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/36.jpg)
Cara prosedural
![Page 37: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/37.jpg)
Cara OOP
![Page 38: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/38.jpg)
Ada kesalahan!
![Page 39: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/39.jpg)
Cara prosedural
![Page 40: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/40.jpg)
Cara OOP
![Page 41: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/41.jpg)
Tapi…
• Dengan cara OOP, kita punya 4 method
rotate() dan 4 method playSound()
• Seluruh method tersebut harus di-kelola satu-
persatupersatu
• Pada tahap ini, design OO masih belum selesai
![Page 42: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/42.jpg)
Perhatikan
![Page 43: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/43.jpg)
![Page 44: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/44.jpg)
Akhirnya….
Akan dibahas detail di pertemuan berikutnya.....
![Page 45: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/45.jpg)
Boxing dan Unboxing
• Tipe Data Primitive memiliki padanan tipe
data Objectnya (Wrapper)
• Int -> Integer• Int -> Integer
• Boolean ->�Boolean
• dan seterusnya …
![Page 46: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/46.jpg)
Boxing dan Unboxing
• Terjadi secara otomatis
• Boxing : Konversi dari primitive type
kereference type
• Unboxing : Konversi dari reference type ke • Unboxing : Konversi dari reference type ke
primitive type
![Page 47: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/47.jpg)
Contoh Boxing
![Page 48: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/48.jpg)
Contoh unboxing
![Page 49: Pemrograman Berorientasi Obyek - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/anton/download/pbo4.pdf · Java Naming conventions ... Overloading konstruktor • Satu class bisa memiliki](https://reader030.vdocument.in/reader030/viewer/2022040623/5d4def2688c993cf7a8b8b4e/html5/thumbnails/49.jpg)
NEXT
• Inheritance