Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Bahasa C

Menguasai Pewarisan & Polimorfisme C#: Contoh Kode Praktis

Apa Itu Pewarisan dalam C#?

Pewarisan adalah dasar desain berorientasi objek C#. Ini memungkinkan kelas anak untuk secara otomatis menerima field dan metode dari kelas induk, sambil masih mengizinkan anak untuk mengganti atau memperluas perilaku tersebut. Ini mempromosikan penggunaan kembali kode, menyederhanakan pemeliharaan, dan membentuk hierarki yang jelas.

Contoh Pewarisan C#

Di bawah ini adalah demonstrasi langkah demi langkah yang menunjukkan cara mengimplementasikan pewarisan dan menggunakan anggota protected.

Langkah 1 – Modifikasi Kelas Dasar

Buka Tutorial.cs dan ubah kelas Tutorial sehingga field utamanya adalah protected:

Menguasai Pewarisan & Polimorfisme C#: Contoh Kode Praktis

Menggunakan protected memastikan bahwa hanya kelas turunan yang dapat mengakses field ini secara langsung.

Langkah 2 – Buat Kelas Turunan

Sisipkan kode berikut ke Tutorial.cs setelah definisi kelas dasar:

Menguasai Pewarisan & Polimorfisme C#: Contoh Kode Praktis

Penjelasan:

  1. Deklarasikan Guru99Tutorial sebagai anak dari Tutorial menggunakan sintaks titik dua (:).
  2. Tambahkan metode RenameTutorial yang menetapkan nilai baru ke TutorialName.
  3. Karena TutorialName adalah protected, Guru99Tutorial dapat mengaksesnya meskipun tidak secara eksplisit dideklarasikan di sana.

Langkah 3 – Gunakan Kelas Turunan di Program.cs

Ganti isi Program.cs dengan berikut:

Menguasai Pewarisan & Polimorfisme C#: Contoh Kode Praktis

using System; namespace DemoApplication { public class Tutorial { protected int TutorialID; protected string TutorialName; public void SetTutorial(int pID, string pName) { TutorialID = pID; TutorialName = pName; } public string GetTutorial() { return TutorialName; } } public class Guru99Tutorial : Tutorial { public void RenameTutorial(string pNewName) { TutorialName = pNewName; } static void Main(string[] args) { Guru99Tutorial pTutor = new Guru99Tutorial(); pTutor.RenameTutorial(".Net by Guru99"); Console.WriteLine(pTutor.GetTutorial()); Console.ReadKey(); } } }

Penjelasan:

  1. Program membuat instance Guru99Tutorial, bukan kelas dasar Tutorial.
  2. Ia memanggil RenameTutorial untuk mengubah judul.
  3. Meski GetTutorial didefinisikan di kelas dasar, instance turunan dapat memanggilnya secara langsung.

Menjalankan kode ini mencetak:

Menguasai Pewarisan & Polimorfisme C#: Contoh Kode Praktis

Apa Itu Polimorfisme dalam C#?

Polimorfisme memungkinkan satu antarmuka untuk mewakili bentuk yang berbeda. Dalam C#, ini sering muncul sebagai overloading atau overriding metode, yang memungkinkan nama metode yang sama untuk melakukan tugas yang berbeda berdasarkan parameter atau konteks.

Contoh Polimorfisme C#

Kami akan menunjukkan overloading metode dalam kelas yang sama.

Langkah 1 – Perbarui Kelas Dasar

Modifikasi Tutorial.cs seperti yang ditunjukkan:

Menguasai Pewarisan & Polimorfisme C#: Contoh Kode Praktis

Perubahan utama:

  1. Metode SetTutorial sekarang memiliki dua overload – satu yang menerima int dan string, dan yang lain hanya menerima string.
  2. Kedua overload menetapkan nilai ke field yang sesuai.

Langkah 2 – Uji di Program.cs

Ganti Program.cs dengan kode berikut:

using System; namespace DemoApplication { class Tutorial { public int TutorialID; public string TutorialName; public void SetTutorial(int pID, string pName) { TutorialID = pID; TutorialName = pName; } public void SetTutorial(string pName) { TutorialName = pName; } public string GetTutorial() { return TutorialName; } static void Main(string[] args) { Tutorial pTutor = new Tutorial(); pTutor.SetTutorial(1, "First Tutorial"); Console.WriteLine(pTutor.GetTutorial()); pTutor.SetTutorial("Second Tutorial"); Console.WriteLine(pTutor.GetTutorial()); Console.ReadKey(); } } }

Penjelasan:

  1. Panggilan pertama melewatkan id dan name ke overload dua parameter.
  2. Panggilan kedua melewatkan hanya name, memanggil overload satu parameter.

Konsol menampilkan:

Menguasai Pewarisan & Polimorfisme C#: Contoh Kode Praktis

Untuk skenario canggih, Anda dapat menambahkan metode GetTutorialID untuk mengambil ID secara terpisah.

Ringkasan

Bahasa C

  1. Ekspresi, Pernyataan, dan Blok C#: Panduan Komprehensif dengan Contoh Praktis
  2. Kelas dan Objek C#: Fondasi untuk OOP yang Kuat
  3. Menguasai Kelas dan Metode Abstrak C#: Panduan Praktis
  4. Memahami Kelas dan Metode Parsial C#
  5. Menguasai Kelas dan Metode Tersegel di C#—Kapan Menggunakannya, Contoh Jelas, dan Tingkatkan Keamanan serta Performa Kode
  6. Fungsi C++ Dijelaskan dengan Contoh Kode Praktis
  7. Struktur vs Kelas C++: Perbedaan Utama, Sintaks, dan Kasus Penggunaan Terbaik
  8. While vs. Do-While Loop: Perbandingan Jelas dengan Contoh Praktis
  9. Memahami type() dan isinstance() dalam Python: Contoh Praktis
  10. Memahami Struktur Program C#: Komponen Inti dan Contoh