C # Abstract Class Tutorial: Τι είναι η αφαίρεση με το παράδειγμα

Πίνακας περιεχομένων:

Anonim

Τι είναι το Abstract Class στο C #;

Το Abstract Class δεν μπορεί ποτέ να τεκμηριωθεί και επισημαίνεται με τη λέξη-κλειδί περίληψη. Μια αφηρημένη τάξη περιέχει μηδενικές ή περισσότερες αφηρημένες μεθόδους σε αυτήν. Η αφηρημένη κλάση λειτουργεί ως βασική τάξη και έχει σχεδιαστεί ώστε να κληρονομείται από υποκατηγορίες που είτε εφαρμόζουν είτε παρακάμπτουν τη μέθοδο της.

Ας μάθουμε αφηρημένη τάξη στο C # με παράδειγμα που δίνεται παρακάτω. Παρακάτω είναι ο ορισμός μιας τάξης που ονομάζεται "Animal". Όταν ορίζεται η κατηγορία «Ζώο», δεν υπάρχει τίποτα γνωστό για το ζώο, είτε πρόκειται για σκύλο είτε για γάτα. Η μέθοδος που ονομάζεται περιγραφή είναι απλώς μια γενική μέθοδος που ορίζεται για την τάξη.

Τώρα, όταν είναι γνωστό τι ακριβώς θα είναι το ζώο, δημιουργούμε μια άλλη τάξη που κληρονομεί την βασική τάξη. Αν γνωρίζουμε ότι το ζώο είναι στην πραγματικότητα Σκύλος, δημιουργούμε κατηγορία σκυλιών που κληρονομεί την κύρια βασική τάξη. Η βασική διαφορά εδώ είναι ότι η κατηγορία Dog δεν μπορεί να αλλάξει τον ορισμό της μεθόδου Περιγραφή της κλάσης Animal. Πρέπει να καθορίσει τη δική της αφηρημένη μέθοδο C # που ονομάζεται Dog-Description. Αυτή είναι η βασική έννοια των C # αφηρημένων τάξεων.

Ας δούμε την αφηρημένη τάξη στο C # με παράδειγμα σε πραγματικό χρόνο για το πώς μπορούμε να αλλάξουμε τον κώδικά μας για να συμπεριλάβουμε μια C # αφηρημένη τάξη. Σημειώστε ότι δεν θα εκτελούμε τον κώδικα, επειδή δεν υπάρχει τίποτα που να μπορεί να εκτελεστεί χρησιμοποιώντας μια κλάση αφαίρεσης C #.

Βήμα 1) Ως πρώτο βήμα, ας δημιουργήσουμε μια αφηρημένη τάξη. Το μάθημα θα ονομάζεται Tutorial και θα έχει μόνο μία μέθοδο. Όλος ο κωδικός πρέπει να γραφτεί στο αρχείο Program.cs.

Επεξήγηση κώδικα: -

  1. Καθορίζουμε πρώτα την αφηρημένη τάξη. Σημειώστε τη χρήση της αφηρημένης λέξης-κλειδιού. Αυτό χρησιμοποιείται για να υποδηλώσει ότι η τάξη είναι μια αφηρημένη τάξη.
  2. Στη συνέχεια, ορίζουμε τη μέθοδο που δεν κάνει τίποτα. Η μέθοδος πρέπει να έχει τη λέξη-κλειδί που ονομάζεται εικονική. Αυτό σημαίνει ότι η μέθοδος δεν μπορεί να αλλάξει από την παιδική τάξη. Αυτή είναι μια βασική απαίτηση για κάθε αφηρημένη τάξη.

Βήμα 2) Τώρα ας προσθέσουμε την παιδική μας τάξη. Αυτός ο κωδικός προστίθεται στο αρχείο 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();}}}

Δεν υπάρχει τίποτα εξαιρετικό για αυτόν τον κώδικα. Απλώς ορίζουμε μια τάξη που ονομάζεται «Guru99Tutorial» η οποία κληρονομεί την αφηρημένη τάξη Tutorial. Στη συνέχεια, ορίζουμε τις ίδιες μεθόδους που χρησιμοποιούσαμε από πριν.

Σημείωση: Εδώ δεν μπορούμε να αλλάξουμε τον ορισμό της μεθόδου Set που ορίστηκε στην κατηγορία Tutorial. Στην τάξη Tutorial, είχαμε ορίσει μια μέθοδο που ονομάζεται «Set» (δημόσιο εικονικό κενό σύνολο ()). Δεδομένου ότι η μέθοδος ήταν μέρος της αφηρημένης κλάσης C #, δεν επιτρέπεται να ορίσουμε ξανά τη μέθοδο Set στην τάξη Guru99Tutorial.

Περίληψη

  • Μια αφηρημένη τάξη σε C αιχμηρή είναι μια βασική τάξη που έχει τις πολύ βασικές απαιτήσεις για το πώς πρέπει να μοιάζει μια τάξη. Δεν είναι δυνατόν για την παιδική τάξη να κληρονομήσει τις μεθόδους της βασικής τάξης.