0Pricing
C# Academy · Pelajaran

Polimorfisme dan Penimpaan Metode

Kuasai polimorfisme untuk membuat kode yang fleksibel dan dapat digunakan kembali melalui penimpaan metode

Polimorfisme dan Penimpaan Metode adalah pelajaran C# Academy gratis di CoddyKit. Ini adalah pelajaran 7 dari 7. 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 C# Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus C# Academy mencakup 7 pelajaran total.

Pengantar Polimorfisme

Polimorfisme dan Penimpaan Metode

Selamat datang di pelajaran berikutnya! Dalam pelajaran ini, Anda akan mempelajari polimorfisme, konsep penting dalam Pemrograman Berorientasi Objek, serta cara menimpa metode untuk menghasilkan kode yang fleksibel dan dapat digunakan kembali. Mari kita mulai!

Polimorfisme dan Penimpaan Metode — ilustrasi 1

Apa itu Polimorfisme?

Apa itu Polimorfisme?

Polimorfisme berarti "banyak bentuk" dan memungkinkan objek dari kelas yang berbeda diperlakukan sebagai objek dari kelas dasar yang sama. Hal ini memberikan fleksibilitas dan memungkinkan penggunaan kembali kode Anda.

Contoh: Suatu metode dapat berperilaku berbeda bergantung pada jenis objek yang sedang ditanganinya.

Poin Penting: Polimorfisme dicapai dalam C# melalui penimpaan metode dan antarmuka.

Memahami Penimpaan Metode

Memahami Penimpaan Metode

Penimpaan metode memungkinkan kelas turunan menyediakan implementasi khusus untuk metode yang telah ditentukan di kelas dasarnya. Gunakan kata kunci virtual di kelas dasar dan kata kunci override di kelas turunan. Contoh:

Tips: Penimpaan metode memastikan bahwa metode yang tepat dipanggil untuk suatu objek, terlepas dari tipe referensinya.

using System;

class Animal {
    public virtual void Speak() {
        Console.WriteLine("The animal makes a sound.");
    }
}

class Dog : Animal {
    public override void Speak() {
        Console.WriteLine("The dog barks.");
    }
}

class Cat : Animal {
    public override void Speak() {
        Console.WriteLine("The cat meows.");
    }
}

class Program {
    static void Main() {
        Animal myDog = new Dog();
        Animal myCat = new Cat();

        myDog.Speak(); // Outputs: The dog barks.
        myCat.Speak(); // Outputs: The cat meows.
    }
}

Menggunakan Polimorfisme

Menggunakan Polimorfisme

Polimorfisme memungkinkan Anda menulis kode yang bekerja dengan berbagai jenis objek melalui antarmuka umum. Contoh:

Poin Penting: Polimorfisme memungkinkan Anda menulis kode yang lebih umum dan dapat digunakan kembali.

using System;

class Animal {
    public virtual void Speak() {
        Console.WriteLine("The animal makes a sound.");
    }
}

class Dog : Animal {
    public override void Speak() {
        Console.WriteLine("The dog barks.");
    }
}

class Cat : Animal {
    public override void Speak() {
        Console.WriteLine("The cat meows.");
    }
}

class Program {
    static void Main() {
        Animal[] animals = { new Dog(), new Cat() };

        foreach (Animal animal in animals) {
            animal.Speak(); // Calls the appropriate method for each object
        }
    }
}

Menggunakan Kata Kunci Dasar dengan Penimpaan

Menggunakan Kata Kunci Dasar dengan Penimpaan

Kata kunci base digunakan untuk memanggil metode dari kelas dasar dalam metode yang ditimpa. Contoh:

Tips: Gunakan base jika Anda ingin mempertahankan fungsionalitas kelas dasar dalam metode yang ditimpa.

using System;

class Animal {
    public virtual void Speak() {
        Console.WriteLine("The animal makes a sound.");
    }
}

class Dog : Animal {
    public override void Speak() {
        base.Speak(); // Calls the base class method
        Console.WriteLine("The dog barks.");
    }
}

class Program {
    static void Main() {
        Dog myDog = new Dog();
        myDog.Speak(); // Outputs: The animal makes a sound. The dog barks.
    }
}

Kelas abstract dan Metode

Kelas abstract dan Metode

Kelas abstract menyediakan cetak biru untuk kelas turunan. Kelas ini dapat menyertakan metode abstract yang harus ditimpa di kelas turunan. Contoh:

Poin Penting: Metode abstract memastikan bahwa kelas turunan menyediakan implementasinya sendiri.

using System;

abstract class Animal {
    public abstract void Speak(); // Abstract method
}

class Dog : Animal {
    public override void Speak() {
        Console.WriteLine("The dog barks.");
    }
}

class Program {
    static void Main() {
        Animal myDog = new Dog();
        myDog.Speak(); // Outputs: The dog barks.
    }
}

Tantangan Latihan

Tantangan Latihan

Buat kelas abstract Shape dengan metode abstract CalculateArea(). Turunkan kelas Rectangle dan Circle yang menerapkan CalculateArea(). Contoh:

using System;

abstract class Shape {
    public abstract double CalculateArea();
}

class Rectangle : Shape {
    public double Width { get; set; }
    public double Height { get; set; }

    public override double CalculateArea() {
        return Width * Height;
    }
}

class Circle : Shape {
    public double Radius { get; set; }

    public override double CalculateArea() {
        return Math.PI * Radius * Radius;
    }
}

class Program {
    static void Main() {
        Shape rectangle = new Rectangle { Width = 4, Height = 5 };
        Shape circle = new Circle { Radius = 3 };

        Console.WriteLine("Rectangle Area: " + rectangle.CalculateArea());
        Console.WriteLine("Circle Area: " + circle.CalculateArea());
    }
}

Praktik Terbaik untuk Polimorfisme

Praktik Terbaik untuk Polimorfisme

Berikut beberapa praktik terbaik:

  • Gunakan polimorfisme untuk menyederhanakan kode dan menghindari duplikasi.
  • Timpa hanya metode yang memerlukan perilaku khusus di kelas turunan.
  • Gunakan kelas dan metode abstract untuk antarmuka bersama di antara kelas turunan.

Tips: Polimorfisme membuat kode Anda lebih mudah diperluas dan dipelihara.

Bagus Sekali!

Bagus Sekali!

Selamat! Anda telah mempelajari cara menggunakan polimorfisme dan penimpaan metode untuk menulis kode yang fleksibel dan dapat digunakan kembali. Pada pelajaran berikutnya, kita akan mempelajari cara bekerja dengan antarmuka untuk mencapai abstraksi dan menerapkan berbagai perilaku. Mari terus menulis kode!

Polimorfisme dan Penimpaan Metode — ilustrasi 10

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Polimorfisme dan Penimpaan Metode” gratis?

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

Apa yang akan aku pelajari di “Polimorfisme dan Penimpaan Metode”?

Kuasai polimorfisme untuk membuat kode yang fleksibel dan dapat digunakan kembali melalui penimpaan metode Kamu berlatih C# 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 C# Academy?

Tidak diperlukan pengalaman sebelumnya. C# 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 7 dari 7.

Berapa lama pelajaran “Polimorfisme dan 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 C# Academy ini?

Ya. Setiap pelajaran C# 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. Apa Itu Pemrograman Berorientasi Objek?
  2. Mendefinisikan Kelas dan Objek
  3. Memahami Properti dan Metode
  4. Konstruktor dalam C#
  5. Enkapsulasi dan Pengubah Akses
  6. Pewarisan: Menggunakan Kembali Kode
  7. Polimorfisme dan Penimpaan Metode
← Kembali ke C# Academy