C # Tutorial Kelas Abstrak: Apa itu Abstraksi dengan Contoh

Daftar Isi:

Anonim

Apa itu Kelas Abstrak di C #?

Kelas Abstrak tidak pernah dapat dibuat instance-nya dan ditandai dengan kata kunci abstrak. Kelas abstrak berisi nol atau lebih metode abstrak di dalamnya. Kelas abstrak bertindak sebagai kelas dasar dan dirancang untuk diwariskan oleh subkelas yang mengimplementasikan atau mengganti metodenya.

Mari belajar kelas abstrak di C # dengan contoh yang diberikan di bawah ini. Di bawah ini adalah definisi kelas yang disebut 'Hewan.' Ketika kelas 'Hewan' didefinisikan, tidak ada yang diketahui tentang hewan tersebut, apakah itu anjing atau kucing. Metode yang disebut deskripsi hanyalah metode umum yang ditentukan untuk kelas.

Sekarang ketika sudah diketahui apa sebenarnya Hewan itu, kami membuat kelas lain yang mewarisi kelas dasar. Jika kita tahu bahwa hewan itu sebenarnya adalah Anjing, kita membuat kelas Anjing yang mewarisi kelas dasar utama. Perbedaan utama di sini adalah bahwa kelas Anjing tidak dapat mengubah definisi metode Deskripsi kelas Hewan. Itu harus mendefinisikan metode abstrak C # sendiri yang disebut Deskripsi-Anjing. Ini adalah konsep dasar kelas abstrak C #.

Mari kita lihat kelas abstrak di C # dengan contoh waktu nyata tentang bagaimana kita dapat mengubah kode kita untuk menyertakan kelas abstrak C #. Perhatikan bahwa kami tidak akan menjalankan kode, karena tidak ada yang dapat dijalankan menggunakan kelas abstraksi C #.

Langkah 1) Sebagai langkah pertama, mari buat kelas abstrak. Kelas akan disebut Tutorial dan hanya memiliki satu metode. Semua kode harus ditulis di file Program.cs.

Penjelasan Kode: -

  1. Pertama-tama kita mendefinisikan kelas abstrak. Perhatikan penggunaan kata kunci abstrak. Ini digunakan untuk menunjukkan bahwa kelas tersebut adalah kelas abstrak.
  2. Selanjutnya, kami mendefinisikan metode kami yang tidak melakukan apa-apa. Metode tersebut harus memiliki kata kunci yang disebut virtual. Ini berarti bahwa metode tersebut tidak dapat diubah oleh kelas anak. Ini adalah persyaratan dasar untuk setiap kelas abstrak.

Langkah 2) Sekarang mari tambahkan kelas anak kita. Kode ini ditambahkan ke file Program.cs.

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{abstract class Tutorial{public virtual void Set(){}}class Guru99Tutorial:Tutorial{protected int TutorialID;protected string TutorialName;public void SetTutorial(int pID,string pName){TutorialID=pID;TutorialName=pName;}public String GetTutorial(){return TutorialName;}static void Main(string[] args){Guru99Tutorial pTutor=new Guru99Tutorial();pTutor.SetTutorial(1,".Net");Console.WriteLine(pTutor.GetTutorial());Console.ReadKey();}}}

Tidak ada yang luar biasa tentang kode ini. Kami hanya mendefinisikan kelas yang disebut 'Guru99Tutorial' yang mewarisi kelas Tutorial abstrak. Kami kemudian mendefinisikan metode yang sama seperti yang telah kami gunakan sebelumnya.

Catatan: Di sini kita tidak dapat mengubah definisi metode Set yang didefinisikan di kelas Tutorial. Di kelas Tutorial, kami telah mendefinisikan metode yang disebut 'Set' (public virtual void Set ()). Karena metode ini merupakan bagian dari kelas abstrak C #, kami tidak diizinkan untuk menentukan metode Set lagi di kelas Guru99Tutorial.

Ringkasan

  • Kelas abstrak dalam C sharp adalah kelas dasar yang memiliki persyaratan paling dasar tentang tampilan kelas. Kelas anak tidak mungkin mewarisi metode kelas dasar.