C # Partial Class και Partial Method (Με παραδείγματα)

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

Υπάρχουν πολλές καταστάσεις όταν ίσως χρειαστεί να διαχωρίσετε έναν ορισμό κλάσης, όπως όταν εργάζεστε σε έργα μεγάλης κλίμακας, πολλοί προγραμματιστές και προγραμματιστές ενδέχεται να χρειαστεί να εργαστούν στην ίδια τάξη ταυτόχρονα. Σε αυτήν την περίπτωση μπορούμε να χρησιμοποιήσουμε μια λειτουργία που ονομάζεται Partial Class .

Εισαγωγή στη μερική τάξη

Κατά τον προγραμματισμό σε C # (ή OOP), μπορούμε να χωρίσουμε τον ορισμό μιας κλάσης σε δύο ή περισσότερα αρχεία προέλευσης. Τα αρχεία προέλευσης περιέχουν μια ενότητα του ορισμού της κλάσης και όλα τα μέρη συνδυάζονται κατά τη σύνταξη της εφαρμογής. Για τον διαχωρισμό ενός ορισμού τάξης, πρέπει να χρησιμοποιήσουμε τη partialλέξη-κλειδί.

Παράδειγμα 1:

Έχουμε ένα έργο με το όνομα HeightWeightInfoπου δείχνει το ύψος και το βάρος.

Έχουμε ένα αρχείο που ονομάζεται ως File1.csμερική κλάση που ονομάζεται Record. Έχει δύο ακέραιες μεταβλητές h & w και μια μέθοδο / κατασκευαστή που ονομάζεται Record που αντιστοιχίζει τις τιμές του h & w.

 namespace HeightWeightInfo ( class File1 ( ) public partial class Record ( private int h; private int w; public Record(int h, int w) ( this.h = h; this.w = w; ) ) )

Εδώ είναι ένα άλλο αρχείο που ονομάζεται File2.cs με την ίδια μερική κλάση Record που έχει μόνο τη μέθοδο PrintRecord. Αυτή η μέθοδος θα εμφανίσει τις τιμές του h & w.

 namespace HeightWeightInfo ( class File2 ( ) public partial class Record ( public void PrintRecord() ( Console.WriteLine("Height:"+ h); Console.WriteLine("Weight:"+ w); ) ) )

Εδώ τώρα μπορούμε να δούμε την κύρια μέθοδο του έργου:

 namespace HeightWeightInfo ( class Program ( static void Main(string() args) ( Record myRecord = new Record(10, 15); myRecord.PrintRecord(); Console.ReadLine(); ) ) )

Εδώ έχουμε το αντικείμενο της κλάσης Record ως myRecord που μεταδίδει τις τιμές παραμέτρων ως 10 και 15 σε h και w αντίστοιχα στη μέθοδο που ορίζεται στο File1.cs.

Η μέθοδος PrintRecord καλείται από το αντικείμενο myRecord που ορίζεται στο File2.cs.

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

Μέρη όπου partialμπορεί να χρησιμοποιηθεί η τάξη:

  1. Ενώ εργάζεστε σε μεγαλύτερα έργα με περισσότερους από έναν προγραμματιστές, βοηθά τους προγραμματιστές να εργάζονται ταυτόχρονα στην ίδια τάξη.
  2. Οι κωδικοί μπορούν να προστεθούν ή να τροποποιηθούν στην τάξη χωρίς να δημιουργηθούν ξανά αρχεία προέλευσης τα οποία δημιουργούνται αυτόματα από το IDE (π.χ. Visual Studio).

Πράγματα που πρέπει να θυμάστε για τη μερική τάξη

Η partialλέξη-κλειδί καθορίζει ότι άλλα μέρη της κλάσης μπορούν να οριστούν στο χώρο ονομάτων. Είναι υποχρεωτικό να χρησιμοποιήσετε τη μερική λέξη-κλειδί εάν προσπαθούμε να κάνουμε μια τάξη μερική. Όλα τα τμήματα της τάξης πρέπει να βρίσκονται στον ίδιο χώρο ονομάτων και να είναι διαθέσιμα κατά τη στιγμή της μεταγλώττισης για να σχηματίσουν τον τελικό τύπο. Όλα τα μέρη πρέπει να έχουν τον ίδιο τροποποιητή πρόσβασης, δηλαδή ιδιωτικό, δημόσιο ή ούτω καθεξής.

  • Εάν οποιοδήποτε μέρος δηλωθεί αφηρημένο, τότε ολόκληρος ο τύπος θεωρείται αφηρημένος.
  • Εάν κάποιο μέρος δηλωθεί σφραγισμένο, τότε ολόκληρος ο τύπος θεωρείται σφραγισμένος.
  • Εάν κάποιο μέρος δηλώνει έναν βασικό τύπο, τότε ολόκληρος ο τύπος κληρονομεί αυτήν την κλάση.
  • Κάθε μέλος της τάξης που δηλώνεται σε μερικό ορισμό είναι διαθέσιμο σε όλα τα άλλα μέρη.
  • Όλα τα τμήματα μιας μερικής τάξης πρέπει να βρίσκονται στον ίδιο χώρο ονομάτων.

** Σημείωση: Ο partialτροποποιητής δεν είναι διαθέσιμος σε δηλώσεις εκπροσώπου ή απαρίθμησης

Εισαγωγή σε μερικές μεθόδους

Μια μερική τάξη μπορεί να περιέχει μια μερική μέθοδο. Ένα μέρος της τάξης περιέχει την υπογραφή της μεθόδου. Μια προαιρετική εφαρμογή μπορεί να οριστεί στο ίδιο μέρος ή σε άλλο μέρος. Εάν η εφαρμογή δεν παρέχεται, τότε η μέθοδος και όλες οι κλήσεις καταργούνται κατά τη στιγμή της μεταγλώττισης.

Παράδειγμα 2:

Ας πάρουμε ένα παράδειγμα ως μια μερική κλάση που Carορίζεται στην file1.csοποία έχει τρεις μεθόδους InitializeCar (), BuildRim () και BuildWheels (). Μεταξύ αυτών των μεθόδων, το InitializeCar ορίζεται ως partial.

 public partial class Car ( partial void InitializeCar(); public void BuildRim() ( ) public void BuildWheels() ( ) )

Και έχουμε ένα άλλο αρχείο με το όνομα file2.csπου έχει δύο μεθόδους BuildEngine και InitializeCar. Η μέθοδος InitializeCar είναι μερική μέθοδο η οποία ορίζεται επίσης στο file1.cs.

 public partial class Car ( public void BuildEngine() ( ) partial void InitializeCar() ( string str = "Car"; ) )

Μια μερική δήλωση μεθόδου αποτελείται από δύο μέρη:

  1. Ο ορισμός όπως στο file1.cs.
  2. Η εφαρμογή όπως στο file2.cs.

Μπορεί να βρίσκονται σε ξεχωριστά μέρη της μερικής τάξης ή στο ίδιο μέρος.

Πράγματα που πρέπει να θυμάστε για τη μερική μέθοδο

  • partial λέξη-κλειδί.
  • τύπος επιστροφής void .
  • σιωπηρά private.
  • και δεν μπορεί να είναι virtual.

ενδιαφέροντα άρθρα...