0Pricing
Java Academy · Pelajaran

Penimpaan Metode

Pelajari cara subkelas mendefinisikan ulang metode induk untuk mengubah atau memperluas perilaku.

Penimpaan Metode adalah pelajaran Java Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 3. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Java Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Java Academy mencakup 3 pelajaran total.

Definisi

Penimpaan metode berarti mendefinisikan ulang metode kelas induk di dalam subkelas. Metode tersebut memiliki nama, parameter, dan tipe hasil yang sama, tetapi isi yang baru. Dengan demikian, setiap subkelas dapat memberikan perilaku khusus.

Mengapa menimpa metode?

Penimpaan metode memungkinkan penyesuaian. Sebagai contoh, anjing dan kucing sama-sama merupakan hewan, tetapi masing-masing mengeluarkan suara yang berbeda. Alih-alih menulis nama metode baru, keduanya menimpa metode yang sama agar penggunaannya konsisten.

Aturan penimpaan metode

Aturan: tanda tangan metode harus sama persis, tipe hasil harus kompatibel, dan tingkat akses tidak boleh lebih ketat. Gunakan anotasi @Override untuk menemukan kesalahan saat kompilasi.

Menggunakan super.method()

Anda tetap dapat memanggil metode milik kelas induk dengan super.method(). Ini memungkinkan Anda memperluas perilaku, bukan sepenuhnya menggantinya, dengan menggabungkan logika lama dan baru dalam satu pemanggilan.

Kesalahan

Kesalahan: mengubah jenis parameter membuat pembebanan berlebih, bukan penimpaan. Lupa menuliskan @Override dapat menyembunyikan salah ketik. Hindari juga mempersempit akses (misalnya, publik → privat) karena hal ini menyebabkan kesalahan kompilasi.

Kode: contoh penimpaan metode

Kode: Dog dan Cat menimpa speak() dari Animal. Bahkan saat dirujuk sebagai Animal, versi subkelas yang dijalankan, menunjukkan polimorfisme sejati.

public class Main {
  static class Animal {
    void speak() {
      System.out.println("Some generic animal sound");
    }
  }

  static class Dog extends Animal {
    @Override
    void speak() {
      System.out.println("Woof!");
    }
  }

  static class Cat extends Animal {
    @Override
    void speak() {
      System.out.println("Meow!");
    }
  }

  public static void main(String[] args) {
    Animal a1 = new Dog(); // upcast to Animal
    Animal a2 = new Cat();
    a1.speak(); // runs Dog version
    a2.speak(); // runs Cat version
  }
}

Pemeriksaan penimpaan metode

Pemeriksaan singkat: Apa yang dapat dilakukan subkelas dengan penimpaan metode?

Ringkasan

Ringkasan: Penimpaan mendefinisikan ulang metode dengan tanda tangan yang sama sehingga subkelas dapat menyesuaikan perilaku. Gunakan @Override dan panggil super.method() bila diperlukan.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Penimpaan Metode” gratis?

Ya — teks lengkap “Penimpaan Metode” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Java Academy, upgrade ke CoddyKit PRO. Kursus Java Academy mencakup 3 pelajaran total.

Apa yang akan aku pelajari di “Penimpaan Metode”?

Pelajari cara subkelas mendefinisikan ulang metode induk untuk mengubah atau memperluas perilaku. Kamu berlatih Java Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Java Academy?

Tidak diperlukan pengalaman sebelumnya. Java Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 3.

Berapa lama pelajaran “Penimpaan Metode” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Java Academy ini?

Ya. Setiap pelajaran Java Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. extends dan super
  2. Penimpaan Metode
  3. Polimorfisme dan Pengikatan Dinamis
← Kembali ke Java Academy