Install Web App

Belajar OOP Bahasa Pemrogaman Java #24 | Pengertian Polymorphism Java

profil-penulis

Robert Saputra

10 Mei 2023

Pengertian dan Konsep Polymorphism pada Bahasa Pemrograman Java

Polymorphism adalah salah satu konsep fundamental dalam pemrograman berorientasi objek (OOP) yang memungkinkan objek untuk dapat mengambil banyak bentuk atau perilaku yang berbeda. Dalam bahasa pemrograman Java, polymorphism memungkinkan objek dari kelas yang berbeda untuk digunakan dengan cara yang serupa, bahkan jika perilaku yang sesungguhnya berbeda. Artikel ini akan membahas pengertian dan konsep polymorphism dalam Java, serta memberikan contoh penggunaan dan outputnya.

Pengertian Polymorphism

Polymorphism adalah kemampuan untuk menggunakan objek dari kelas yang berbeda dengan cara yang serupa. Ini memungkinkan untuk melakukan tindakan tertentu pada objek tanpa perlu mengetahui kelas objek tersebut. Polymorphism dalam Java biasanya terkait dengan penggunaan metode yang sama namun diimplementasikan secara berbeda dalam kelas-kelas yang berbeda. Ini menciptakan fleksibilitas dan modularitas dalam desain program.

Ada dua jenis polymorphism dalam Java:

  1. Compile-time Polymorphism (Polymorphism pada Waktu Kompilasi): Juga dikenal sebagai static polymorphism. Ini terjadi saat kompiler menentukan metode atau fungsi yang akan dipanggil saat waktu kompilasi berdasarkan jenis objek yang digunakan. Contoh dari compile-time polymorphism adalah metode overloading.

  2. Runtime Polymorphism (Polymorphism pada Waktu Pelaksanaan): Juga dikenal sebagai dynamic polymorphism. Ini terjadi saat pemilihan metode atau fungsi yang akan dijalankan tergantung pada objek yang sebenarnya saat aplikasi berjalan. Contoh dari runtime polymorphism adalah metode overriding.

Konsep Polymorphism dalam Java

Konsep polymorphism dalam Java dapat diilustrasikan dengan baik melalui pewarisan (inheritance) dan penggantian (overriding) metode. Dalam pewarisan, sebuah subclass (kelas turunan) dapat menggantikan metode dari superclass (kelas induk) sehingga metode tersebut dapat memiliki implementasi yang berbeda dalam setiap kelas turunan. Namun, saat metode ini dipanggil melalui objek, Java akan menentukan metode mana yang harus dijalankan berdasarkan jenis objek yang sebenarnya.

Contoh penggunaan polymorphism dalam Java dapat dilihat pada contoh berikut:

class Animal {
    void sound() {
        System.out.println("Hewan mengeluarkan suara.");
    }
}

class Dog extends Animal {
    @Override
    void sound() {
        System.out.println("Anjing menggonggong.");
    }
}

class Cat extends Animal {
    @Override
    void sound() {
        System.out.println("Kucing miau.");
    }
}

public class Main {
    public static void main(String[] args) {
        Animal myAnimal;

        myAnimal = new Dog();
        myAnimal.sound(); // Output: Anjing menggonggong

        myAnimal = new Cat();
        myAnimal.sound(); // Output: Kucing miau
    }
}

Dalam contoh di atas, kita memiliki tiga kelas: Animal, Dog, dan Cat. Kelas Dog dan Cat adalah kelas turunan dari Animal. Masing-masing dari kelas ini memiliki metode sound yang menggantikan metode sound dari Animal.

Kemudian, dalam Main, kita membuat objek myAnimal yang awalnya merujuk pada objek dari kelas Dog dan kemudian diubah untuk merujuk pada objek dari kelas Cat. Meskipun kita memanggil metode sound pada myAnimal, Java akan menjalankan metode yang sesuai dengan jenis objek yang sebenarnya.

Output

Anjing menggonggong
Kucing miau

Output di atas menunjukkan bahwa meskipun kita menggunakan referensi dari kelas Animal, metode sound yang sesuai dengan jenis objek yang sebenarnya yang dijalankan. Itulah contoh dari konsep polymorphism dalam Java yang memungkinkan objek untuk memiliki perilaku yang berbeda tergantung pada jenis objek tersebut.

Artikel Lainnya Dengan Kategori Terkait :


1. Belajar Bahasa Pemrogaman Java #01 | Apa Itu Java dan Sejarah Singkatnya

2. Belajar Bahasa Pemrogaman Java #02 | Pengertian dan Keunggulan Java

3. Belajar Bahasa Pemrogaman Java #03 | Pengertian JVM (Java Virtual Machine) dan fungsinya

4. Belajar Bahasa Pemrogaman Java #04 | Pengertian JRE dan JDK

5. Belajar Bahasa Pemrogaman Java #05 | Cara Menginstall Java JDK (Java Development Kit)

6. Belajar Bahasa Pemrogaman Java #06 | Mengatur Setting Path untuk Java JDK

7. Belajar Bahasa Pemrogaman Java #07 | Cara Menjalankan kode Program Java

8. Belajar Bahasa Pemrogaman Java #08 | Melihat Pesan Error Kode Program Java

9. Belajar Bahasa Pemrogaman Java #09 | Cara Menjalankan Java dari Notepad++

10. Belajar Bahasa Pemrogaman Java #10 | Struktur Dasar Kode Program Bahasa Pemrograman Java

11. Belajar Bahasa Pemrogaman Java #11 | Aturan Dasar Penulisan Kode Java

12. Belajar Bahasa Pemrogaman Java #12 | Pengertian dan Cara Penulisan Variabel Bahasa Java

13. Belajar Bahasa Pemrogaman Java #13 | Pengertian dan Cara Pembuatan Konstanta Bahasa Java

14. Belajar Bahasa Pemrogaman Java #14 | Cara Menampilkan Teks di Bahasa Java

15. Belajar Bahasa Pemrogaman Java #15 | Jenis-Jenis Tipe Data dalam Bahasa Java

16. Belajar Bahasa Pemrogaman Java #16 | Tipe Data Integer Bahasa Pemrograman Java

17. Belajar Bahasa Pemrogaman Java #17 | Tipe Data Float dan Double Bahasa Pemrograman Java

18. Belajar Bahasa Pemrogaman Java #18 | Tipe Data Boolean Bahasa Pemrograman Java

19. Belajar Bahasa Pemrogaman Java #19 | Tipe Data Char Bahasa Pemrograman Java

20. Belajar Bahasa Pemrogaman Java #20 | Tipe Data String Bahasa Pemrograman Java

21. Belajar Bahasa Pemrogaman Java #21 | Tipe Data Array

22. Belajar Bahasa Pemrogaman Java #22 | Jenis-jenis Operator

23. Belajar Bahasa Pemrogaman Java #23 | Jenis-jenis Operator Aritmatika

24. Belajar Bahasa Pemrogaman Java #24 | Cara Menampilkan Teks

25. Belajar Bahasa Pemrogaman Java #25 | Jenis-jenis Operator Perbandingan / Relasional

26. Belajar Bahasa Pemrogaman Java #26 | Jenis-jenis Operator Logika

27. Belajar Bahasa Pemrogaman Java #27 | Jenis-jenis Operator Bitwise

28. Belajar Bahasa Pemrogaman Java #28 | Jenis-jenis Operator Assignment

29. Belajar Bahasa Pemrogaman Java #29 | Tipe Percabangan Kondisi IF

30. Belajar Bahasa Pemrogaman Java #30 | Percabangan Kondisi IF ELSE

31. Belajar Bahasa Pemrogaman Java #31 | Percabangan Kondisi IF ELSE IF

32. Belajar Bahasa Pemrogaman Java #32 | Percabangan Kondisi Switch Case Bahasa Java

33. Belajar Bahasa Pemrogaman Java #33 | Perulangan FOR Bahasa Java

34. Belajar Bahasa Pemrogaman Java #34 | Perulangan WHILE Bahasa Java

35. Belajar Bahasa Pemrogaman Java #35 | Perulangan DO WHILE Bahasa Java

36. Belajar Bahasa Pemrogaman Java #36 | Fungsi dan Pengertian Perintah BREAK

37. Belajar Bahasa Pemrogaman Java #37 | Fungsi dan Pengertian Perintah CONTINUE

38. Belajar Bahasa Pemrogaman Java #38 | Jenis-jenis Operator Assignment

39. Belajar Bahasa Pemrogaman Java #39 | Pengertian Function (Fungsi) Bahasa Java

40. Belajar Bahasa Pemrogaman Java #40 | Pengertian Parameter dan Argumen Fungsi Java

41. Belajar Bahasa Pemrogaman Java #41 | Fungsi Perintah Return dalam Function

42. Belajar Bahasa Pemrogaman Java #42 | Pengertian Variable Scope

43. Belajar OOP Bahasa Pemrogaman Java #01 | Pengertian Pemrograman Berorientasi Objek

44. Belajar OOP Bahasa Pemrogaman Java #02 | Pengertian Class, Object, Property dan Method

45. Belajar OOP Bahasa Pemrogaman Java #03 | Cara Membuat Class dan Object

46. Belajar OOP Bahasa Pemrogaman Java #04 | Istilah Property

47. Belajar OOP Bahasa Pemrogaman Java #05 | Cara Membuat Method Bahasa Java

48. Belajar OOP Bahasa Pemrogaman Java #06 | Pengertian Constructor

49. Belajar OOP Bahasa Pemrogaman Java #07 | Cara Membuat Pewarisan Class (Inheritance)

50. Belajar OOP Bahasa Pemrogaman Java #08 | Cara Membuat Multiple Inheritance

51. Belajar OOP Bahasa Pemrogaman Java #09 | Pengertian Method Overidding

52. Belajar OOP Bahasa Pemrogaman Java #10 | Pengertian Method Overloading

53. Belajar OOP Bahasa Pemrogaman Java #11 | Pengertian dan Fungsi Perintah super

54. Belajar OOP Bahasa Pemrogaman Java #12 | Pengertian dan Fungsi Perintah this

55. Belajar OOP Bahasa Pemrogaman Java #13 | Pengertian dan Fungsi Perintah static

56. Belajar OOP Bahasa Pemrogaman Java #14 | Pengertian dan Fungsi Perintah Final

57. Belajar OOP Bahasa Pemrogaman Java #15 | Cara Membuat Package dan Proses Import

58. Belajar OOP Bahasa Pemrogaman Java #16 | Cara Mengakses Class Pada Package Yang Sama

59. Belajar OOP Bahasa Pemrogaman Java #17 | Memahami Batasan Hak Akses (access modifier)

60. Belajar OOP Bahasa Pemrogaman Java #18 | Batasan Hak Akses Private

61. Belajar OOP Bahasa Pemrogaman Java #19 | Batasan Hak Akses Public

62. Belajar OOP Bahasa Pemrogaman Java #20 | Batasan Hak Akses Default

63. Belajar OOP Bahasa Pemrogaman Java #21 | Batasan Hak Akses Protected

64. Belajar OOP Bahasa Pemrogaman Java #22 | Membuat Setter dan Getter

65. Belajar OOP Bahasa Pemrogaman Java #23 | Pengertian Encapsulation Java

66. Belajar OOP Bahasa Pemrogaman Java #24 | Pengertian Polymorphism Java

67. Belajar OOP Bahasa Pemrogaman Java #25 | Pengertian Abstract Class

68. Belajar OOP Bahasa Pemrogaman Java #26 | Pengertian Interface Class

69. Latihan Kode Bahasa Pemrogaman Java #27 | Pola Persegi Bintang

70. Latihan Kode Bahasa Pemrogaman Java #28 | Pola Persegi Panjang Bintang

71. Latihan Kode Bahasa Pemrogaman Java #29 | Pola Segitiga

72. Latihan Kode Bahasa Pemrogaman Java #30 | Menghitung Luas Lingkaran

73. Latihan Kode Bahasa Pemrogaman Java #31 | Menghitung Luas Belah Ketupat

74. Latihan Kode Bahasa Pemrogaman Java #32 | Konversi Suhu Celcius

75. Latihan Kode Bahasa Pemrogaman Java #33 | Konversi Desimal ke Biner

76. Latihan Kode Bahasa Pemrogaman Java #34 | Konversi Biner ke Desimal

77. Latihan Kode Bahasa Pemrogaman Java #35 | Cek Bilangan Prima

78. Latihan Kode Bahasa Pemrogaman Java #36 | Mencari Akar Persamaan Kuadrat

79. Latihan Kode Bahasa Pemrogaman Java #37 | Menghitung Gaji Karyawan

80. Latihan Kode Bahasa Pemrogaman Java #38 | Membuat Menu Berulang

81. Latihan Kode Bahasa Pemrogaman Java #39 | Menampilkan Biodata Mahasiswa

82. Latihan Kode Bahasa Pemrogaman Java #40 | Menghitung Diskon Potongan Harga

83. Latihan Kode Bahasa Pemrogaman Java #41 | Cek Tahun Kabisat

84. Latihan Kode Bahasa Pemrogaman Java #42 | Menentukan Nama Hari

85. Latihan Kode Bahasa Pemrogaman Java #43 | Menentukan Nama Bulan

86. Latihan Kode Bahasa Pemrogaman Java #44 | Menghitung Jumlah Huruf Vokal

87. Latihan Kode Bahasa Pemrogaman Java #45 | Penjumlahan Array

88. Latihan Kode Bahasa Pemrogaman Java #46 | Pencarian Data Array (Searching)

89. Latihan Kode Bahasa Pemrogaman Java #47 | Mencari Nilai Terbesar Array

90. Latihan Kode Bahasa Pemrogaman Java #48 | Mencari Nilai Terkecil Array

91. Memahami Konsep Inheritance (Pewarisan) Dalam Java

92. Mengenal Encapsulation dalam Java

93. Mengenal Package dalam Java

94. Mengenal Polymorphisme Pada Java

Masuk Terlebih dahulu untuk berkomentar

Paling baru
Lihat Lainnya