Seperti yang kita ketahui, Karakteristik OOP (Object Oriented Programming) dibagi menjadi 4 yaitu: Abstraction, Encapsulation, Inheritance, dan Polimorphisme. Di dalam penerapan Polimorphisme kita mengenal istilah Overload dan Override, tapi apakah perbedaan dari Overload dan Override?
Overload
Overload yaitu ketika mendefinisikan beberapa method dengan nama yang sama, tapi daftar parameternya berbeda.
Contoh Overload:
class Induk {
// mendefinisikan method test() tanpa parameter
public void test() {
System.out.println("Method di dalam kelas Induk");
}
public void test(String s) {
System.out.println("Method di dalam kelas Turunan");
System.out.println("s : \"" + s + "\"");
}}
Override
Pada saat mendefinisikan suatu method dalam kelas turunan yang memiliki
nama dan daftar parameter sama persis dengan yang terdapat pada kelas
induk, maka proses tersebut disebut Override.
Contoh Override:
class A {
......
public void tampilkanNilai() {
System.out.println("Nilai a: " + getA());
}
}
class B extends A {
.......
// melakukan override terhadap method tampilkanNilai()
// yang terdapat pada kelas A
public void tampilkanNilai() {
System.out.println("Nilai b: " + getB());
}
}
No comments:
Write komentar