Perbedaan Overloading Dan Overriding

Daftar Isi

    Lancang Kuning - Overloading mengacu pada kemampuan untuk menggunakan pengidentifikasian tunggal untuk menentukan beberapa metode kelas yang berbeda dalam parameter input maupun output. Metode kelebihan beban umumnya digunakan ketika mereka secara konseptual menjalankan tugas yang sama tetapi dengan serangkaian parameter yang sedikit berbeda.

    Overloading adalah konsep yang digunakan untuk menghindari kode berlebihan di mana nama metode yang sama digunakan beberapa kali tetapi dengan serangkaian parameter yang berbeda. Metode aktual yang dipanggil selama runtime diselesaikan pada waktu kompilasi, sehingga menghindari kesalahan runtime. Overloading memberikan kejelasan kode, menghilangkan kompleksitas, dan meningkatkan kinerja runtime.

    Baca juga : Tempat Wisata di Riau

    Overriding

    Method overriding adalah salah satu cara di mana java mencapai Run Time Polymorphism. Versi metode yang dieksekusi akan ditentukan oleh objek yang digunakan untuk menjalankannya. Jika objek kelas induk digunakan untuk memanggil metode, maka versi di kelas induk akan dieksekusi, tetapi jika objek dari subkelas digunakan untuk memanggil metode, maka versi di kelas anak akan dieksekusi.

    Dengan kata lain, itu adalah jenis objek yang dirujuk (bukan tipe variabel referensi) yang menentukan versi metode override yang akan dieksekusi.

    Aturan method overriding di Java

    • Daftar argumen: Daftar argumen metode override (metode kelas anak) harus cocok dengan metode Override (metode kelas induk). Tipe data dari argumen dan urutannya harus sama persis.
    • Access Modifier dari metode override (metode subclass) tidak bisa lebih membatasi daripada metode override dari kelas induk. Untuk mis. jika Access Modifier dari metode kelas induk bersifat publik maka metode overriding (metode kelas anak) tidak dapat memiliki pengubah akses pribadi, terlindungi dan standar, karena ketiga pengubah akses ini lebih membatasi daripada publik.

    Baca juga : Operasi Matriks Dengan Array Multidimensi

    • Metode pribadi, statis dan final tidak dapat ditimpa karena mereka lokal ke kelas. Namun metode statis dapat dideklarasikan ulang di kelas sub, dalam hal ini metode sub kelas akan bertindak berbeda dan tidak akan ada hubungannya dengan metode statis sama dengan kelas induk.
    • Metode overriding (metode kelas anak) dapat melempar pengecualian yang tidak dicentang, terlepas dari apakah metode yang diganti (metode kelas induk) melempar pengecualian atau tidak. Namun metode overriding tidak harus membuang pengecualian yang diperiksa yang baru atau lebih luas daripada yang dinyatakan oleh metode override. Kami akan membahas ini secara rinci dengan contoh dalam tutorial yang akan datang.
    • Mengikat metode yang ditimpa terjadi pada saat runtime yang dikenal sebagai pengikatan dinamis.

    Keuntungan dari metode overriding

    Keuntungan utama dari metode utama adalah bahwa kelas dapat memberikan implementasi spesifik nya sendiri untuk metode yang diwariskan tanpa mengubah kode class induknya. Ini berguna ketika kelas memiliki beberapa kelas anak, jadi jika kelas anak perlu menggunakan metode kelas induk, itu dapat menggunakannya dan kelas-kelas lain yang ingin memiliki implementasi yang berbeda dapat menggunakan fitur-fitur utama untuk membuat perubahan tanpa menyentuh kelas induk kode.

    Baca  juga :  Tempat Wisata di Pekanbaru

    Perbedaan Overloading Dan Overriding

    • Metode overloading adalah polimorfisme waktu kompilasi. Metode overriding adalah polimorfisme run time.
    • Overloading Ini membantu meningkatkan keterbacaan program. Sementara itu overriding digunakan untuk memberikan implementasi spesifik pada metode yang sudah tersedia oleh class induknya atau kelas super.
    • Overloading ini terjadi di dalam kelas. Sementara itu overriding dilakukan dalam dua kelas dengan hubungan warisan.
    • Metode overloading mungkin atau mungkin tidak memerlukan pewarisan. Sementara metode override selalu membutuhkan pewarisan.
    • Dalam hal ini, metode overloading harus memiliki nama  sama dan class yang berbeda. Sementara dalam hal ini, metode overriding harus memiliki nama dan class yang sama.
    • Dalam metode overloading, tipe pengembalian bisa atau tidak bisa sama, tetapi kita harus mengubah parameter. Sementara dalam overriding, tipe pengembalian harus sama atau ko-varian.(Bagaas)

    Bagikan Artikel

    data.label
    data.label
    data.label
    data.label
    Beri penilaian untuk artikel Perbedaan Overloading Dan Overriding
    Sangat Suka

    54%

    Suka

    0%

    Terinspirasi

    18%

    Tidak Peduli

    27%

    Marah

    0%

    Komentar